3

我想从我的 WinForms ToolStrip 菜单中访问我的“我的文档”文件夹。我正在使用 XML 文件填充 ToolStrip。我存储Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)在我的 XML 文件中。它正在引发错误。

有人可以帮忙吗?

这是我的 xml 文件的一部分。

<item name="MSPowerpoint" action="%PROGRAMFILES%\Microsoft Office\office11\POWERPNT.exe" parameters="/n"/>
<item name="MyDocuments" action="Environment.GetFolderPath(Environment.SpecialFolder.Personal" parameters=""/>    
<item name="" text="-" />

这是启动应用程序的方法。

public void startapp(string s)
    {
        ProcessStartInfo pst = new ProcessStartInfo();

        pst.UseShellExecute = true;
        pst.FileName = s;
        Process.Start(pst);            
    }

这是我得到的错误..“系统找不到指定的文件。”

4

2 回答 2

4

您需要在开始该过程之前找到一种评估路径的方法:您收到错误“找不到指定的文件”,因为操作系统正在寻找一个名为“ Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)”而不是实际的目录或文件这代表的目录。

某种编码可能会起作用,因此不要放入Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)XML,而是放入代表该值的字符串 - 例如“#MYDOCUMENTS” - 然后,当创建 ToolStrip 时,您可以提取这些值。

// For example:

string fileName = GetFileNameFromXml(); // Or however you get it
if (fileName == "#MYDOCUMENTS")
{ 
    fileName = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
}

startapp(fileName);
于 2011-05-18T10:30:39.027 回答
0

你得到什么错误?似乎你错过了

)

在 XML 文件中。

action="Environment.GetFolderPath(Environment.SpecialFolder.Personal"

于 2011-05-18T10:34:50.950 回答