C# 日志分析器COM API运行缓慢

C# 日志分析器COM API运行缓慢,c#,logparser,C#,Logparser,我正在使用LogParser COM API查询WPF.NET 4.0应用程序中的事件日志,但现在我面临一个问题,即ExecuteQuery运行时间太长。在示例代码Winform+.NET2.0中,LogQueryClassClass的ExecuteQuery api立即返回。我的参数与下面的示例相同 var inputFormat = new COMEventLogInputContextClassClass { direction = "FW", fullText = tru

我正在使用LogParser COM API查询WPF.NET 4.0应用程序中的事件日志,但现在我面临一个问题,即ExecuteQuery运行时间太长。在示例代码Winform+.NET2.0中,LogQueryClassClass的ExecuteQuery api立即返回。我的参数与下面的示例相同

var inputFormat = new COMEventLogInputContextClassClass
{
    direction = "FW",
    fullText = true,
    resolveSIDs = false,
    formatMessage = true,
    formatMsg = true,
    msgErrorMode = "MSG",
    fullEventCode = false,
    stringsSep = "|",
    iCheckpoint = string.Empty,
    binaryFormat = "HEX"
};
现在我很困惑,因为API与Winform+.NET2.0和WPF+.NET4.0的行为没有任何区别。有人能给我点化一下吗

顺便说一句,我在示例应用程序和我的应用程序之间对远程服务器使用相同的查询和参数。从理论上讲,性能应该是相同的,但现在在我的应用程序中,ExecuteQuery通常需要5秒,但在示例应用程序中,它会立即返回。但是,使用本地机器事件查询时,两个应用程序中的ExecuteQuery都会立即返回


我的开发环境是Windows Server 2008 R2+VS2010

您试图解析的事件日志有多大?它是否位于执行代码的同一台机器上?你能包括你收到的全部错误消息吗?@JayWalker,结果大约是1000条,这是针对远程服务器的。虽然没有错误消息,但两者都可以成功执行,只有一条执行速度特别慢。@JayWalker,我的操作系统是Windows Server 2008 R2,我正在使用VS2010编译这两个应用程序。我猜示例应用程序和您的应用程序之间存在差异,或者您的本地应用程序和您的服务器之间存在差异。没有更多信息,很难说出。我不认为这个问题是特定于框架版本的。Log Parser Lizard()是一个工具,它指出Log Parser 2.2和.net Framework 4.0是它工作的先决条件。奇怪的是,它在我的Windows 8机器上运行正常,两者都非常快。所以这真的很奇怪。关于我之前关于本地与远程的评论,实际上是在WindowsServer2008R2上,本地/远程都需要一段时间才能返回ExecuteQuery。但本地将在3秒左右返回,远程将在5秒左右返回。