我正在用C#编写一个应用程序与Visual Studio 2010和接近结束与我的应用程序的工程。为了测试我使用3吨不同的机器:c#.NET应用程序在3台机器中的1台机器上启动时崩溃System.IO.FileNotFoundException
机答:Workstation-PC (Intel CPU, Win 7 64Bit, .NET 4.0)
机B:Private PC (Intel CPU, Win7 64Bit, .NET 4.0)
机C:Labor-PC (AMD64, Win7 64Bit, .NET 4.0)
我要为最终版本独立的.exe文件。无论我在解决方案文件夹中运行应用程序还是将其复制到任何目录并在其中运行,该应用程序都像机器A和B上的魅力一样。它始终工作(因为它应该)。但是,计算机C抛出一个错误,直接在应用程序启动并输出“ ... WERInternalMetadata.xml
‘-file它说’System.IO.FileNotFoundException
”:
CLR20r3 myapp.exe 1.0.0.0 53318d78 Testreporter 1.0.0.0 53318d78 5d f System.IO.FileNotFoundException
但是,当我开始在溶液中的应用文件夹(例如... myapp \ bin \ x64 \ Debug),其中包含* .dll文件,该应用程序完美无缺地运行。 这是否意味着程序在根目录中搜索它的依赖关系?
我已经检查了代码中的引用。此外,如果参考文献有任何问题,该应用程序不会在机器B上运行...
我觉得好奇的是,机器A和B运行程序没有问题,无论我在哪里放置.exe,但机器C只在放置在特定路径中时正确运行我的应用程序....
也许处理器在那里起作用?有关如何解决这个问题的任何想法?
答案: 如何构建一个.exe文件,该文件已经包含了我的应用程序所需的所有依赖项和库。一个独立的-EXE这么说......
非常感谢您
是所有三台机器管理员的用户,还是失败用户可能不是管理员? –
是的所有用户都以管理员身份登录。 并且所有的计算机都运行SP1。 – user3443859