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