我与同事有纠纷。他写了一个程序,我打电话给一个System.Diagnostics.Process
对象并调用process.Start()
。但是,在某些情况下,他想抛出一个例外来使自己的过程崩溃,我应该用process.StandardError
来解决他的例外,并从那里处理。如何在进程之间传递字符串错误消息?
我的直觉反应是这是一个非常糟糕的主意;通过一个未处理的异常终止一个进程是Windows操作系统本身所关注并注意到的事情,像弹出错误消息框这样的东西,这是非常不可取的。我认为他应该宁愿以一些有意义的错误代码优雅地终止,并且我可以检查该过程的ExitCode
。但他说一个整数是不够的;他想用字符串传送错误信息。
我是否反对让他抛出异常,崩溃他自己的应用程序?有没有一种简单的方法让他向我传递一个字符串错误消息,而无需我们在两个应用程序之间定义特殊的通信机制?你还会推荐什么?
我同意你的直觉。看起来你的同事正在使用一个例外,只是因为这使得他能够传递信息。这不完全是例外情况... – Treb 2012-03-07 08:03:11