跪求:winform程序发布后,找不到菜单存储文件(xml文件)

JTLSOFT007 2007-07-26 06:42:24
请教各位,我的菜单结构是存储在一个.XML文件中的,在编译环境下运行都没问题,但是发布出来后就说路径不对,找不到我发布的.XML文件,提示为:未能找到路径“C:\Documents and Settings\we\Local Settings\Apps\2.0\PXXV1GOP.VTC\frame\menu.xml”的一部分。
我到“C:\Documents and Settings\we\Local Settings\Apps\2.0\PXXV1GOP.VTC\”看了下,确实没有frame文件夹,然后我吧frame文件夹还有menu.xml文件一同拷到目录下,可是运行程序还是一样的提示,请大家帮忙,谢谢!!
...全文
975 36 打赏 收藏 转发到动态 举报
写回复
用AI写文章
36 条回复
切换为时间正序
请发表友善的回复…
发表回复
努力学飞的鸟 2011-03-25
  • 打赏
  • 举报
回复
学习下,呵呵,我也是现在遇到了这么个问题
JTLSOFT007 2007-07-27
  • 打赏
  • 举报
回复
问题解决了:
1、首先打开项目属性--->发布--->应用程序文件--->把frame\mune.xml文件的发布状态改为包括。
2、在引用路径的时候这么写“string strMenuXml = Directory.GetCurrentDirectory() + "\\frame\\mune.xml"; ”
通过上面两个步骤把问题解决了。
谢谢各位,特别是 jiatong1981(末日之痕) ,lambober(星之劫),hhyytt(鹦鹉螺)
Csharpbull 2007-07-27
  • 打赏
  • 举报
回复
up
jiatong1981 2007-07-27
  • 打赏
  • 举报
回复
晕点 还是没明白为何会出现这状况

这样尝试呢?

string strMenuXml = Application.StartupPath + @"..\frame\mune.xml";
heguo 2007-07-27
  • 打赏
  • 举报
回复
要用mage.exe或mageui.exe发布ClickOnce
hhyytt 2007-07-27
  • 打赏
  • 举报
回复
XML打倒资源里不就行了,找不到时就写一份到路径里,有就不写了。解决这种异常。
lambober 2007-07-27
  • 打赏
  • 举报
回复
你自己打包的时候也要把相关的文件给打进去
JTLSOFT007 2007-07-26
  • 打赏
  • 举报
回复
自己也顶下!!
cceon 2007-07-26
  • 打赏
  • 举报
回复
顶一下
JTLSOFT007 2007-07-26
  • 打赏
  • 举报
回复
呵呵,谢谢jiatong1981(末日之痕) !
jiatong1981 2007-07-26
  • 打赏
  • 举报
回复
ok 你如果着急 可以先写成死的路经然后保证该路径下的xml文件存在即可

至于你的问题 肯定是相关代码那里出现了些小状况 我要回家料 希望lx的帮你搞定
jiatong1981 2007-07-26
  • 打赏
  • 举报
回复
C:\Documents and Settings\we\Local Settings\Apps\2.0\PXXV1GOP.VTC\st_m..tion_36016e4b63d84d89_0001.0001a6fcfe321f2d5f7\frame\menu.xml“

=================================================================
st_m..tion_36016e4b63d84d89_0001.0001a6fcfe321f2d5f7

怎么会有这么奇怪的文件夹名字?
jiatong1981 2007-07-26
  • 打赏
  • 举报
回复
说不清楚了 我不知道你现在报错时exe是在那里运行的

假如

你目前在 D:\program files\app\Application1.exe 运行这个app.exe

路径使用 string strMenuXml = Application.StartupPath + @"\frame\mune.xml";

那么 你就需要有 D:\program files\app\frame\mune.xml 这个东东

JTLSOFT007 2007-07-26
  • 打赏
  • 举报
回复
不好意思,还是发布出来就不行了,跟上面的提示一样,
未能找到路径“C:\Documents and Settings\we\Local Settings\Apps\2.0\PXXV1GOP.VTC\st_m..tion_36016e4b63d84d89_0001.0001a6fcfe321f2d5f7\frame\menu.xml“
jiatong1981 2007-07-26
  • 打赏
  • 举报
回复
strMenuXml= ”D:\\shuntong_xs\\st_manager\\bin\\Debug\\frame\\mune.xml“


按照这个目录建立相应文件

然后你运行debug

路径使用 @".\frame\mune.xml"

我就不信还不行
JTLSOFT007 2007-07-26
  • 打赏
  • 举报
回复
请教怎么解决啊!
按道理说strMenuXml=”D:\shuntong_xs\st_manager\frame\mune.xml“才对啊!
晕了。
jiatong1981 2007-07-26
  • 打赏
  • 举报
回复
Application.StartupPath是取得当前exe运行目录哦

假如你的exe在桌面上 那么 这个值就等于例如

C:\Documents and Settings\Administrator\桌面

和你的安装目录是无关的
JTLSOFT007 2007-07-26
  • 打赏
  • 举报
回复
strMenuXml= ”D:\\shuntong_xs\\st_manager\\bin\\Debug\\frame\\mune.xml“
JTLSOFT007 2007-07-26
  • 打赏
  • 举报
回复
我的D:\shuntong_xs\st_manager就是根目录。
jiatong1981 2007-07-26
  • 打赏
  • 举报
回复
debug 调试 看看

string strMenuXml = Application.StartupPath + @"\frame\mune.xml";

看看 strMenuXml= ?
加载更多回复(16)

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧