如何使用c#从winform项目访问路径

时间:2014-01-03 12:16:28

标签: c# winforms

我正在尝试使用以下代码从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();
 }

专家请帮助。感谢

1 个答案:

答案 0 :(得分:3)

您的问题是,从Visual Studio运行时,您的应用程序正在bin目录中运行。已编译的应用程序可能从不同的位置运行。

您可能希望将文件list.xml添加到输出目录,以便在应用运行的任何位置都可以使用它。您可以分两步完成此操作:

  • 在您的项目下添加一个新文件夹"xml",并将文件list.xml添加到其中(使用右键单击上下文菜单中的添加 - >现有项
  • 右键单击该文件,选择属性并将复制到输出目录更改为始终复制

现在,当您编译项目时,您的新文件夹和文件xml/list.xml将包含在/bin下,您应该可以从运行应用的任何位置访问它。