在我自己的电脑运行时是没有问题的,当把执行文件拷贝到其他同一Windows系统的电脑上执行时就报这个错,有什么解决方法
解决方案:10分
这类,都不是 .net framework 托管系统中发生的崩溃事件,都是底层就直接把进程给弄垮掉了。因此它给出的提示信息几乎全都是含糊的、不靠谱的。你只有自己想办法诊断。例如在你怀疑出问题的代码的中间步骤加入一个日志,那么就能判断是在这个日志“之前”还是“之后”发生的问题。
如果诊断出问题具体在哪一行代码出错,那么把发现的问题的处理方法(变通方法),写到你的源代码中。
解决方案:10分
对于一些非 .net 机制的东西,特别是用c++等比较低级的平台开发的组件,它不但容易崩溃,而且提示信息总是“莫名其妙、特别简略”的信息,对用户特别不友好。那么如果可能去捕获异常,你可能需要自己封装一下异常信息:
比如说你要打开一个 Word 进程,那么你可以就要写类似这样的代码
Microsoft.Office.Interop.Excel.Application app = null; try { app = new Microsoft.Office.Interop.Excel.Application(); } catch { throw new Exception( 提示用户应该安装好 Office 再来使用程序); } 继续使用 app 对象来操作......
这里只是举个例子。在特别容易产生模糊提示的地方,你可能需要外地自己封装一下。