我正在尝试使用以下代码从winform应用程序访问该文件夹,但它给了我这条路径
D:\myproject\abc\bin\Debug\..\xml\list.xml
但我的文件夹位于此位置
D:\myproject\abc\xml\list.xml
我正在使用此代码访问xml文件
protected void GetProcess()
{
var ps = Process.GetProcesses();
pictureBox1.Visible = true;
label2.Text = "Tracking Downloader";
foreach (var p in ps)
{
try
{
Process[] proc = Process.GetProcessesByName(p.ProcessName);
XDocument xdoc = XDocument.Load("..\\xml\\lst");
var block = xdoc.Descendants("lst");
foreach (var list in block)
{
if (proc[0].MainModule.FileVersionInfo.FileDescription.Contains(list.Value) )
{
p.Kill();
}
}
// listBox1.Items.Add(proc[0].MainModule.FileVersionInfo.FileDescription);
}
catch
{
Console.WriteLine("Access Denied");
}
}
//pictureBox1.Visible = false;
label2.Visible = true;
Console.ReadLine();
}
专家请帮助。感谢
答案 0 :(得分:3)
您的问题是,从Visual Studio运行时,您的应用程序正在bin
目录中运行。已编译的应用程序可能从不同的位置运行。
您可能希望将文件list.xml
添加到输出目录,以便在应用运行的任何位置都可以使用它。您可以分两步完成此操作:
"xml"
,并将文件list.xml
添加到其中(使用右键单击上下文菜单中的添加 - >现有项) 现在,当您编译项目时,您的新文件夹和文件xml/list.xml
将包含在/bin
下,您应该可以从运行应用的任何位置访问它。