繁体   English   中英

部署C#应用程序问题

[英]Deploying c# application issues

我有一个文件夹的应用程序,我通过右键单击项目添加,选择添加文件夹。 在这个文件夹里面我有xml文件,它们被设置为构建动作:内容,复制到输出目录:如果更新则复制(我已经尝试设置为嵌入式资源)以及我有一些文本文件等等。

在我的bin / debug输出目录中,我有exe,带有xml的文件夹,独立的.txt文件等等。 我的问题是,如果我将exe发送给我的朋友尝试他总是会抛出异常。

假设他将exe放在桌面上,我的程序在某些时候会读取文件夹中xml文件的文件名。 它使用以下代码进行操作

String[] filePaths = Directory.GetFiles(@"DataSources\");

我假设因为这个,当exe从桌面运行时,它希望.xml文件的文件夹在同一个地方? 尝试读取.txt文件时,我有相同类型的异常。 我在这做错了什么?

谢谢你的时间

你尝试过类似的东西: http//msdn.microsoft.com/en-us/library/system.windows.forms.application.executablepath.aspxhttp://msdn.microsoft.com/en-us/library/ system.environment.currentdirectory.aspx

所以Directory.GetFiles(environment.currentdirectory + @“\\ DataSources \\”);

当使用相对路径从文件中读取时,您将获得一个相对于应用程序当前目录的相对路径。 提示:在C#中,您可以查看使用Environment.CurrentDirectory目录。

因此,如果您在桌面上创建快捷方式,则需要确保右键单击该快捷方式并将其“开始于”文件夹设置为应用程序的目录。 这样,当其开始目录和相对路径将相对于该路径而不是快捷方式的路径时,将设置其当前目录。

如果您实际上将exe文件移动到了桌面,则还需要移动它所需的任何资源,因此,如果它想要一个名为“ datasources”的文件夹,则也必须移动该文件夹,或者在启动文件时设置当前目录。应用。

暂无
暂无

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

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