C# - 使用“/select、<file>”打开带有音频文件 selected 的资源管理器时出现问题

C# - problems opening explorer with audio file selected using "/select, <file>"

我正在努力修复 c#.net 应用程序中的一项功能,用户可以在该应用程序中右键单击文件名,他们将有一个 "Open in Explorer" 选项。当他们单击它时,一个新的资源管理器 window 将打开该文件 selected.

问题是,如果该功能用于打开音频文件,那么它似乎很少起作用。前几次尝试 select 会出现在资源管理器 window 中,没有任何问题。

但是,资源管理器 window 偶尔会在打开时挂起半秒左右,恢复时不会 select 编辑任何文件。如果您随后返回应用程序并在同一个文件上再次尝试,则资源管理器将打开文件 selected;没问题。

到目前为止,它似乎对基于文本的文件和目录毫无问题。只有音频文件有这个问题。

我已经尝试了 Whosebug 上关于“/select”CL arg 的大部分内容,但是 none 已经解决了这个问题。有什么想法吗?

当前代码尝试:

void MyFunc(object sender, EventArgs e)
{
    string filePath= "";

    // Code that gets full filepath is here - it has so far always returned a correct path

    if (!string.IsNullOrEmpty(filePath))
    {
        filePath = filePath.Replace(@"/", @"\");

        if (File.Exists(filePath))
        {
            string args = string.Format("/select,\"{0}\"", filePath);

            Process.Start("explorer.exe", args);
        }
    }
}

补充信息:

谢谢

在与更多人交谈后,我们发现这是在 Explorer.exe 中查看音乐文件的一个怪癖。我最终将其用作缓解措施,向这对用户发送电子邮件,并在帮助文档中包含说明。

  • 打开资源管理器并转到我的应用程序所在的基本目录 搜索文件。
  • 右键单击文件窗格,然后select查看->详细信息。
  • 选择 "Customize This Folder" 并转到 "Customize" 选项卡。将 "Optimize this folder for:" 下拉列表 selection 设置为 "General Items"。
  • 已检查 "Also apply this template to all subfolders"。
  • 点击了 "OK"。完成。