我可以在 Windows 打开文件对话框中使用斜杠吗?

Gil*_*il' 5 windows

在标准的 Windows 打开文件对话框(例如,记事本中带有“文件 > 打开”菜单项的对话框)中,我希望能够键入包含斜杠的路径/。但只接受反斜杠(我在 Windows XP 和 Windows 7 中都尝试过)。我可以打开c:\\autoexec.bat,但如果我尝试打开/autoexec.batc:/autoexec.bat,则会收到错误消息

\n\n
c:/autoexec.bat\nThe file name is not valid.\n
Run Code Online (Sandbox Code Playgroud)\n\n

Windows 在某些上下文中接受斜杠作为路径分隔符,但遗憾的是在打开文件对话框中不接受斜杠,至少在默认情况下是这样。

\n\n

是否有神奇的注册表设置、附加程序或其他合理的\xc2\xb9 方法可以让我在 Windows 文件打开对话框中使用斜杠?我对在 Windows 7 下运行的 Office 2007 特别感兴趣,但更喜欢适用于在 XP 和 7 下使用标准对话框的所有应用程序的解决方案。

\n\n

\xe2\x80\x9c不使用 Windows\xe2\x80\x9d 不是一个选项。

\n

sti*_*ijn 5

恐怕答案是否定的:您看到的对话框来自标准 Windows API,大多数程序都会使用它。对其进行编程时,有几个选项可以打开/关闭,导致问题的选项位于OPENFILENAMEOFN_FILEMUSTEXIST结构中。我找不到任何记录它如何准确执行检查的内容,更不用说修改其执行方式的方法了。

我在 Windows 端看到的唯一解决方案是修补包含该函数的 dll,并使其执行另一次允许正斜杠的检查,但这需要大量的技巧。

另一方面,如果您是某种程序员,那么事情可以解决:我能想到的最快的(除了修改字符串的源之外)是创建一个小型命令行程序,该程序接受当前剪贴板输入,向前转换到反斜杠,并将结果再次放入剪贴板。将其放入批处理文件中,为其指定快捷方式并完成。您的工作流程将是:复制路径,点击快捷方式,在对话框中点击 Ctrl-V,这只是一个简单的额外步骤。我认为大多数脚本语言都可以在Windows上获取剪贴板内容,并且它们都可以正则表达式替换,所以实际上只有几行代码。