【问题标题】:How to access path from winform project using c#如何使用c#从winform项目访问路径
【发布时间】:2014-01-03 20:26:34
【问题描述】:

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

请专家帮忙。谢谢

【问题讨论】:

  • 那为什么不"..\\..\\xml\\lst"呢?
  • 嘿,我不明白你想说什么?? @BartoszKP
  • @mainrajput BartoszKP 提到了relative paths in C#
  • @ElliotTereschuk 那里的 GetApplicationFolder() 是什么????
  • @mainrajput 其实有several ways

标签: c# winforms


【解决方案1】:

您的问题是,当从 Visual Studio 运行时,您的应用是从 bin 目录运行的。已编译的应用程序可能会从不同的地方运行。

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

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

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

【讨论】:

  • 怎么不工作了?是否将新文件夹和文件添加到 bin/ 目录?它应该是。您可能需要稍微调整一下路径,但如果您能找出添加路径的位置(可能在 bin/debug/ 下?),找出其余部分应该很容易。
  • 好的对不起我的错误我没有在bin目录中添加文件夹让我试试
  • 我在 bin 文件夹中添加了 xml 文件夹,当我运行应用程序时出现此错误存在多个根元素。第 8 行,位置 2。
  • 恭喜,它成功了!该错误与 XML 文件本身有关;显然,您有多个根元素(所有 XML 内容的最外层元素)。这表明您仍然可以读取该文件... :)
  • 天哪!你是绝对正确的天才,但现在它给了我访问 ID 被拒绝的错误,我该如何解决它:)
猜你喜欢
  • 2021-05-16
  • 2021-11-17
  • 2018-07-01
  • 1970-01-01
  • 2010-10-25
  • 1970-01-01
  • 2013-04-09
  • 1970-01-01
相关资源
最近更新 更多