我们有一个专为 google chrome 设计的应用程序,我们需要在其中添加到网络文件共享的链接。不幸的是,出于安全目的,Chrome 拒绝使用 file://协议(protocol)
。我们想设置一个自定义协议(protocol)来允许此功能。
我认为执行此操作的一个好方法是调用 explorer。以下是我们添加的注册表项:
[HKEY_CLASSES_ROOT\MyApp\DefaultIcon]
@="\"C:\\Windows\\explorer.exe\""
[HKEY_CLASSES_ROOT\MyApp\shell]
[HKEY_CLASSES_ROOT\MyApp\shell\open]
[HKEY_CLASSES_ROOT\MyApp\shell\open\command]
@="\" C:\\Windows\\explorer.exe\" \"%1\""
目前,我们收到一条错误消息,指出协议(protocol)无效。谁能协助纠正这个问题?
非常感谢大家。
最佳答案
@Wolfram Schmied,
我刚刚使用 CMD 为你写了一个解决方法:
REGEDIT4
[HKEY_CLASSES_ROOT\IntranetFileLauncher]
@="URL:IntranetFileLauncher Protocol"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\IntranetFileLauncher\DefaultIcon]
@="\"C:\\Windows\\explorer.exe\""
[HKEY_CLASSES_ROOT\IntranetFileLauncher\shell]
[HKEY_CLASSES_ROOT\IntranetFileLauncher\shell\open]
[HKEY_CLASSES_ROOT\IntranetFileLauncher\shell\open\command]
@="cmd /c set url=\"%1\" & call set url=%%url:intranetfilelauncher:=%% & call start explorer file:%%url%%"
上面的代码基本上和你的一样,除了最后一行它使用 cmd.exe 打开一个文件/文件夹的命令。 在伪代码中:打开 commandpromt,将给定的文件路径作为变量“url”传递,通过剥离协议(protocol)标识符更改变量“url”,最后使用剥离的文件路径打开资源管理器
希望对您有所帮助。
关于windows - 用于打开资源管理器的自定义 URI 协议(protocol),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43234988/