VS2013中C++/CLR的EventLog问题

代码如下

    EventLog log = gcnew EventLog();
    try
    {
        log.Source = "我的应用程序";
        log.WriteEntry("处理信息1", EventLogEntryType::Information);
        log.WriteEntry("处理信息2", EventLogEntryType::Information);
        throw gcnew System::IO::FileNotFoundException("readme.txt文件未找到");
    }
    catch (System::IO::FileNotFoundException ^exception)
    {
        log.WriteEntry("处理信息2", EventLogEntryType::Error);
    }

我这样写了后会报错:无法将参数 1 从“System::Diagnostics::EventLog ^”转换为“System::String ^”

就是那个EventLog log = gcnew EventLog();这里
图片说明
图片说明

c++

2个回答

using namespace System;
using namespace System::Collections;

#using "D:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.5.2\System.dll"
using namespace System::Diagnostics;

COfficeHandle::COfficeHandle()
{

System::Diagnostics::EventLog^ log = gcnew System::Diagnostics::EventLog();
try
{
    log->Source = "我的应用程序";
    log->WriteEntry( "处理信息1", System::Diagnostics::EventLogEntryType::Information );
    log->WriteEntry( "处理信息2", EventLogEntryType::Information );
    throw gcnew System::IO::FileNotFoundException( "readme.txt文件未找到" );
}
catch ( System::IO::FileNotFoundException ^exception )
{
    log->WriteEntry( "处理信息2", EventLogEntryType::Error );
}

}
照 这个试试 我编译通过了的 他那个是c#里面调用的方法 你应该跟我一样是在c++的控制台调用吧

a513155803
a513155803 其实我这个程序是为了把Windows的系统日志详细内容读取出来,使用EVENTLOGRECORD读取的东西都是XML格式,就想看看这个能不能读取解析后的中文详细信息
大约一年之前 回复
d2262272d
潇潇-易水 回复a513155803: 额 ,对了就是你想说的 要的c++ 的调用方式获取出来的
大约一年之前 回复
d2262272d
潇潇-易水 回复a513155803: 唔 另一个问题中的东西 是不是你要的 哦 ~问题有点模糊 我猜应该是, 是的话我给你源码,
大约一年之前 回复
a513155803
a513155803 回复潇潇-易水: 确实,按这个思路搞定了蛮多东西
大约一年之前 回复
d2262272d
潇潇-易水 回复a513155803: c++调用方法? 你是说你的另一个问题里的东西嘛? 我刚看到了 就是读取事件对吧,,你先看哈 我调用出来的那个图 是不是你要的东西嘛 最后 。。。都解决了还不采纳么...
大约一年之前 回复
d2262272d
潇潇-易水 回复a513155803: using 打开的是一个.net的东西,必须要这样才行,相当于你调用dll一样的嘛
大约一年之前 回复
a513155803
a513155803 还有就是,你那里有C++的调用方法的文章吗,这些都是C#调用方法,弄得好多报错
大约一年之前 回复
a513155803
a513155803 好的,解决了,你那个#using是打开个什么东西啊
大约一年之前 回复
System.Diagnostics.EventLog appLog = new System.Diagnostics.EventLog();
a513155803
a513155803 麻烦再看一下更新的图吧
大约一年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐