我想调试Windows托管(C ++ / CLI)进程,该进程由WCF使用的服务调用。它在该进程上调用process.start,但是当它的main方法被执行时,我无法暂停该进程,放置在里面的MessageBox没有被执行和提示,因此我可以将该进程附加到VS Debugger之后。如果我手动启动放置在磁盘上的进程,它会给出消息框,或者如果我以某种方式使用使用Process.Start的测试存根应用程序启动进程,则会显示消息框。
我需要在用C#编写的WCF使用者服务的上下文中调试C ++ / CLI托管进程,它实际上在启动该进程后将数据作为远程处理对象进行调度。有没有办法解决这个问题?
此致
乌斯曼
答案 0 :(得分:1)
由于WCF服务使用不同的用户启动它,因此可能不会出现messagebox。
但是如果你可以测试你的组件,为什么要在WCF下“重新测试”它?
如果您确定没有逻辑错误,则可以通过在组件中正确跟踪执行广告数据来解决所有剩余错误,并在必要时在测试应用程序中重现这些错误。
答案 1 :(得分:0)
我不知道c ++,但是如果你有权访问.Net Framework,你只需拨打Debugger.Launch
答案 2 :(得分:0)
我也面临同样的问题。在Windows服务的LogOn属性页上选中“允许服务与桌面交互”后,它得到了解决。