发布项目后如何访问XML文件?

发布项目后如何访问XML文件?,xml,vb.net,visual-studio,Xml,Vb.net,Visual Studio,在调试模式下,我可以按预期使用以下代码加载XML文件: Dim strm As New FileStream(System.IO.Path.GetFullPath(Application.StartupPath & "\QuestionList.xml"), FileMode.Open) 但在我使用ClickOnce部署发布项目后,始终会出现一条错误消息,提示: 找不到文件: 'C:\Documents and Settings*用户名*\Local Settings\Apps\2.0

在调试模式下,我可以按预期使用以下代码加载XML文件:

Dim strm As New FileStream(System.IO.Path.GetFullPath(Application.StartupPath & "\QuestionList.xml"), FileMode.Open)
但在我使用ClickOnce部署发布项目后,始终会出现一条错误消息,提示:

找不到文件: 'C:\Documents and Settings*用户名*\Local Settings\Apps\2.0\RANDOM CHARACTERS HERE\QuestionList.xml'

发生“找不到文件”异常

我的问题与之类似,并尝试了那里提出的解决方案,但没有运气,就像最初的海报一样


为什么在发布我的项目后无法访问XML文件?

尝试使用双斜杠:

"\\QuestionList.xml"

Clickonce应用程序一旦部署,将位于
AppData\XYZ…BlahBlahBlah
中。您会收到一个错误,因为您的xml不存在。这就是您需要
QuestionList.xml
使其工作的路径


因此,基本上您需要在部署二进制文件时部署xml,请按照给出的说明进行操作,它将指导您如何将文件复制到clickonce安装路径。

Removed C#tag。如果这是错误,请告诉我。文件是否已准备就绪?@SriramSakthivel是,在我的应用程序文件夹中,但不显示在“C:\Documents and Settings*username*\Local Settings\Apps\2.0\RANDOM CHARACTERS HERE\QuestionList.xml”中。您的应用程序文件夹是什么?当您将其部署为clickonce应用程序时,您的应用程序文件夹将位于类似Temp文件夹的位置only@SriramSakthivel对不起,我的意思是它的位置与我的表单和其他资源的位置相同。这就是为什么我要调用
Application.StartupPath&“\QuestionList.xml”
。我应该把它放在别的地方吗?嗯,(在C#…)我也会尝试类似的东西:string x=Application.StartupPath&“\QuestionList.xml”;并使用@x作为参数