Windows CoImpersonaeClient和辅助线程
我有一个在本地系统帐户下作为服务运行的现有COM服务。 当客户端连接时,它的唯一目的是通过模拟运行第三方函数。i、 e.类似于Windows CoImpersonaeClient和辅助线程,windows,security,com,service,Windows,Security,Com,Service,我有一个在本地系统帐户下作为服务运行的现有COM服务。 当客户端连接时,它的唯一目的是通过模拟运行第三方函数。i、 e.类似于 void service_client() { CoImpersonateClient(); tfp(); //third_party_function ... } 多年来,这一切都运行得很好,但现在tfp发生了变化,在保持总体同步的同时,它在内部生成了工作线程,这些线程获取本地系统帐户的身份,而
void service_client()
{
CoImpersonateClient();
tfp(); //third_party_function
...
}
多年来,这一切都运行得很好,但现在tfp发生了变化,在保持总体同步的同时,它在内部生成了工作线程,这些线程获取本地系统帐户的身份,而不是导致函数失败的模拟客户端
鉴于我不能修改tfp,有没有办法解决这个问题
谢谢。模拟是特定于线程的。与供应商合作,你不可能是唯一一个有这个问题的人。不幸的是,供应商没有帮助,这不是他们希望看到他们的产品如何使用。到目前为止,我唯一的解决方案是将tfp打包到exe和CreateProcessAsUser中,并使用管道进行跨进程通信,但这会降低性能。