我知道有很多关于类似问题的话题,但没有一个能解决我的问题。
所以我有一个应用程序,它完美地工作。我在解决方案中添加了installShield-wizard-setup-something,让我可以在任何地方安装它。我试过我的电脑(我创建该程序的那台电脑)并且它有效!
我把它安装在另一台PC上并且在安装之后(很好)当我开始运行.exe时,有一个快速加载(光标变成蓝色圆圈)然后什么都没有..
流程中没有任何内容,日志中没有任何内容,以管理员身份运行它并不起作用。我试图在别处安装它,但同样的事情发生了。我还检查了.NET版本,它是正确的版本。
我不知道还有什么其他信息可以告诉我,所以请随时问我是否有线索。我在这里用完了解决方案。
答案 0 :(得分:1)
可能是你的应用程序使用了一些需要其他Dll的Dll等等。我有时遇到这个问题。对我来说,Dependency Walker对于查找程序和子依赖项的每个依赖项非常有用。 Dependency Walker是一款免费工具,您可以下载。只需打开依赖性walker,选择你的程序exe(在程序运行的开发计算机上),并检查所显示的依赖关系与命运计算机上的文件(程序不起作用)。也许你会发现一些丢失的Dll。
这是AMSI.dll的一个示例:
首先检查命运计算机这个dll的。 其中一个是丢失的,从您的开发系统手动复制Dll,并记下您复制了这个DLL。
如果计算机上的所有Dll和程序仍无效,请继续下一层。打开dll并检查它们的依赖关系:
忽略红色交叉的。只需使用“普通”名称查找dll即可。
继续使用其他dll的图层。 在我的情况下,第二层足以运行程序。
聚苯乙烯。通常情况下,检查第一个列出的Dll就像Kernelbase.dll
而不是像API-MS-WIN-CORE-PROCESSTHREADS-L1-1-3.DLL
那样的Dll就足够了......你会看到我的意思。 (见图2(第2层))