我在Visual Studio Express 2010中在C#上开发了一个Windows应用程序。现在我想部署它。
我使用了发布来部署,但是当我运行项目时,它在表单上出现错误,我使用了一些外部文件,我用它来进行I / O操作,读写文件。
如何解决此错误?我也在使用一个文件夹来存档。
答案 0 :(得分:1)
我非常喜欢将WiX用于安装程序 - 即使你已经拥有内置MSI创建工具的Visual Studio Pro
WiX的好处在于你可以做任何事情,从超级简单到非常复杂。该工具非常棒b / c您可以快速入门,然后向上移动(添加对话框等),因为您的应用程序越来越受欢迎。安装程序的一个技巧 - 考虑使用VMWare / HyperV,安装测试操作系统,然后在安装应用程序之前拍摄操作系统的快照。如果一切正常,那就太棒了 - 你已经完成了。但是,如果有什么不对,请将操作系统回滚到安装前快照,修复错误,然后再次尝试。
答案 1 :(得分:0)
然后尝试部署
答案 2 :(得分:0)
这可能是由于Windows 7 UAC权限所致。尽管当前的书籍,msdn甚至Visual Studio中的片段都教授文件IO的方法,但考虑到UAC时大多数都不正确。
您的所有文件操作都应该在UAC安全区域中进行,例如 Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)
您无法读取或写入C:\ Program Files(x86)目录中的文件,除非您已将应用程序提升为以更高权限运行。
如果您安装应用程序并右键单击可执行文件并选择以管理员身份运行,一切正常,则问题是UAC。
如果您没有围绕UAC限制编码,我强烈建议您阅读它。它将挽救许多令人头疼的问题。
http://www.codeproject.com/Articles/17968/Making-Your-Application-UAC-Aware