<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<head><meta forua="true" http-equiv="Cache-Control" content="max-age=0" /></head>
<card title="winform(C#)程序发布后找不到文件(xml,ini,etc...)的解决方法" id="card1">
<p> 游客</p><p>
标题:winform(C#)程序发布后找不到文件(xml,ini,etc...)的解决方法<br/>
正文:<br/>
做WinForm时，自已遇到了这个问题，情况和这位仁兄的差不多：&amp;ldquo;winform程序发布后，找不到菜单存储文件（xml文件）&amp;rdquo;。情景再现：在c#winform项目中建立一个XML数据文件在\data\demo.xml中，另有一些图片文件在\images\目录中，发布后安装在其它电脑上面，调试时没有问题，运行时会报&amp;ldquo;未找到路径：C:\Documents and Settings\we\Local Settings\Apps\2.0\PXXV1GOP.VTC\&amp;hellip;&amp;rdquo;之类。但是图片的调用没有问题。解释一下几个相关问题：为什么会安装在这么奇怪的路径中？这个问题可能要问MS了，不过从vs2003以来，C#的 winform发布后的程序都会自动安装在X:\Documents   and   Settings\用户名\Local   Settings\Apps\[.net版本]&amp;hellip;的目录中，可能是为了方便程序的升级、卸载、版本回滚等，可以跟vista以后的平台配合。程序调试时如何调用本地XML文件？如果XML数据文件位于\Data\demo.xml，那在程序调试的时候，应用程序的运行地址在：\bin\Debug\App.exe，所以引用时应该这样写：XmlDocument objXmlDoc = new XmlDocument();objXmlDoc.Load(@&amp;quot;..\..\Data\demo.xml&amp;quot;);也可以写成：objXmlDoc.Load(Application.StartupPath.ToString()+@&amp;quot;..\..\Data\demo.xml&amp;quot;);Application.StartupPath会返回应用程序所以在的位置。程序发布后为何找不到XML文件？它到哪去了？跟据MS的思路，XML属于&amp;ldquo;数据文件&amp;rdquo;，而图片等属于&amp;ldquo;资源文件&amp;rdquo;，安装后所有的数据文件将被安装后其它目录，而资源文件会被放置到程序安装路径中。右键项目，点&amp;ldquo;属性&amp;rdquo;，在发布选项卡中点&amp;ldquo;应用程序文<br/><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=111&amp;Page=1">[&lt;&lt;]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=111&amp;Page=1">[[1]]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=111&amp;Page=2">[2]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=111&amp;Page=2">[&gt;&gt;]</a><br/>
<br/>
<a href="wap.asp?act=Com&amp;id=111">查看评论(0)</a><br/>
<a href="wap.asp?act=AddCom&amp;inpId=111">发表评论</a><br/><br/>

<br/>

<br/>
<a href="http://camnpr.com/wap.asp">首页</a>
</p>
</card>
</wml>