繁体   English   中英

在Visual Studio 2010 Express中部署Windows应用程序

[英]Deploying windows application in Visual studio 2010 Express

我已经在Visual Studio Express 2010中的C#上开发了Windows应用程序。现在,我想部署它。

我使用发布进行部署,但是当我运行项目时,在使用一些用于I / O操作,读取和写入文件的外部文件时,窗体上出现错误。

如何解决此错误? 我还在使用一个文件夹来存储文件。

我非常喜欢将WiX用于安装程序-即使您的Visual Studio Pro带有内置的MSI创建工具

http://wix.sourceforge.net/

WiX的好处是,您可以执行任何操作,从超级简单到非常复杂。 b / c这个工具很棒,您可以快速入门,然后随着应用程序的流行而向上移动(添加对话框等)。

安装程序的一个窍门-考虑使用VMWare / HyperV,安装测试操作系统,然后安装应用程序之前对其快照。 如果一切正常,那就太好了-您完成了。 但是,如果不正确,请将操作系统回滚到安装前的快照,修复该错误,然后重试。

这可能是由于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

  1. 将这些外部文件添加到项目中
  2. 右键单击VS中的外部文件将“构建操作”设置为“内容”
  3. 复制到输出目录到CopyAlways

然后尝试部署

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM