2010-11-28 280 views

回答

1

例外是存在严格处理,所以没有一种机制。

+0

那么,异常可以进行序列化,因此可以通过不同的过程记录 – flq 2010-11-28 11:45:55

2

是的,但是这并不容易。

如果您正在从当前应用程序运行AppDomain中的应用程序,那么它相对容易。你所做的就是在那个域中,你附加到UnhandledException事件处理程序并以这种方式注册异常。

不过,我怀疑你指的是C#应用程序在不同的进程正在运行。在这种情况下,您仍然使用大致相同的机制,但实际获得AppDomain要困难得多。这涉及托管C++并在远程域中执行线程。你可以看一下Can I inject a thread in a remote app domain from C#http://social.msdn.microsoft.com/Forums/en/winforms/thread/e4cfa5dd-e254-4088-8754-09dc40d4fb5b有关它的更多信息。

0

在一个例外,你可以发送异常的详细信息到另一个应用程序,它是负责记录的异常。您可以使用各种远程过程调用机制之一,例如可能使用Web服务或Windows Communication Foundation(WCF)。

这是Error Handling Extensions in WCF的一个很好的例子。