未引发第三方DLL事件Windows服务-C#
我正在开发Windows服务应用程序,其中包含第三方DLL作为参考。 我正在使用事件处理程序绑定第三方DLL的一个事件,如下所示: 它应该在我开始从第三方系统导出视频以显示进度计数时调用处理程序未引发第三方DLL事件Windows服务-C#,c#,event-handling,windows-services,C#,Event Handling,Windows Services,我正在开发Windows服务应用程序,其中包含第三方DLL作为参考。 我正在使用事件处理程序绑定第三方DLL的一个事件,如下所示: 它应该在我开始从第三方系统导出视频以显示进度计数时调用处理程序 IExportItem.ProgressChanged += ExportChange_; IExportItem.Start(); void ExportChange_(ExportState state,ExportProgress progress) { } 上面的事件处理程序在Windows
IExportItem.ProgressChanged += ExportChange_;
IExportItem.Start();
void ExportChange_(ExportState state,ExportProgress progress)
{
}
上面的事件处理程序在Windows服务的情况下不调用,但在我使用桌面应用程序中的此DLL导出视频时总是被调用
我还尝试将服务凭据更改为管理员,但也没有帮助。到目前为止,我在网上找不到任何有用的资料
我是Windows服务开发新手,有人能帮我吗?很难说,但我打赌他们通过消息发送进度,这需要应用程序有一个消息循环。服务通常不会启动,但您可以启动一个。我如何启动它?创建一个调用
应用程序的STA线程。运行我在windows服务的OnStart功能下面尝试过的。var thread=新线程(初始化组件);SetApartmentState(ApartmentState.STA);thread.Start()。它没有帮助。InitializeComponents()是执行windows服务启动任务的自定义函数。