关于环境.SpecialFolder

发布于 2024-11-07 18:33:07 字数 788 浏览 3 评论 0原文

我想从 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);            
    }

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

I want to access my "My documents" folder from my WinForms ToolStrip menu. I am populating ToolStrip with a XML file.
I am storing Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) in my XML file. It is throwing an error.

Can anyone please help?.

This is part of my xml file.

<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="-" />

This is the method to start applicatons.

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

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

This is the error i am getting..
"The system cannot find the file specified."

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

扛起拖把扫天下 2024-11-14 18:33:07

在开始该过程之前,您需要找到一种方法来评估路径:您收到错误“找不到指定的文件”,因为操作系统正在查找名为“Environment.txt”的目录或文件。 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);

You need to find a way to evaluate the path before you start the process: you're getting the error 'cannot find the file specified' because the operating system is being literal and looking for a directory or file called 'Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)' and not the actual directory this represents.

Some kind of encoding might work, so instead of putting Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) in the XML, put in a string representing that value - e.g. '#MYDOCUMENTS' - instead, then when the ToolStrip is created you can extract the values.

// For example:

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

startapp(fileName);
小霸王臭丫头 2024-11-14 18:33:07

你遇到什么错误?看来你失踪了

)

在 XML 文件中。

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

What error you are getting? And seems you have missing

)

in the XML File.

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

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文