网页中调用本地程序并且需要用此程序打开指定文件

因为客户需求,需要在网页中调用本地程序并用此程序打开指定目录,所以百度了一下,用网友提供的方式,按以下方式修改了注册表:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\raexe]
"URL Protocol"="C:\Program Files\RadiAntViewer32bit\RadiAntViewer.exe"
@="raProtocol"
[HKEY_CLASSES_ROOT\raexe\DefaultIcon]
@="C:\Program Files\RadiAntViewer32bit\RadiAntViewer.exe,1"
[HKEY_CLASSES_ROOT\raexe\shell]
[HKEY_CLASSES_ROOT\raexe\shell\open]
[HKEY_CLASSES_ROOT\raexe\shell\open\command]
@=""C:\Program Files\RadiAntViewer32bit\RadiAntViewer.exe" "%1""
经上面方式修改注册表后,通过在网页栏输入:raexe://D:\DICOMFILE\20230325\MR\123。可以打开RadiAntViewer.exe这个程序,但是程序提示找不到文件夹或文件。
然后我在windows的运行栏里也输入上述raexe://D:\DICOMFILE\20230325\MR\123。也是只能打开RadiAntViewer.exe程序界面,同样的提示找不到文件。
说明一点,RadiAntViewer.exe这个程序是打开放射影像图片的,对有放射图片的文件夹,在文件夹上点右键也可以选择RadiAntViewer.exe打开。
想问的是:应该如何做才能正确调用RadiAntViewer.exe并打开文件夹,修改注册表?运行栏或网页址栏输入语法问题?
谢谢!

引用chatGPT作答,从您提供的信息来看,可能需要在修改注册表时使用正确的协议语法来调用本地程序并打开指定目录。

尝试以下步骤:

1.将以下注册表代码保存为 raexe.reg 文件:
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\raexe]
"URL Protocol"=""
@="RA File"

[HKEY_CLASSES_ROOT\raexe\DefaultIcon]
@=""C:\Program Files\RadiAntViewer32bit\RadiAntViewer.exe",0"

[HKEY_CLASSES_ROOT\raexe\shell]

[HKEY_CLASSES_ROOT\raexe\shell\open]

[HKEY_CLASSES_ROOT\raexe\shell\open\command]
@=""C:\Program Files\RadiAntViewer32bit\RadiAntViewer.exe" "%1""

2.双击运行这个 .reg 文件,将这些注册表项添加到注册表中。

3.在您的网页中,使用类似以下语法来调用 RadiAntViewer.exe 并打开指定目录:

raexe://D:/DICOMFILE/20230325/MR/123

请注意,使用正斜杠 (/) 而不是反斜杠 ()。在打开指定目录时,确保使用本地文件路径,而不是 URL。

希望这些步骤可以帮助您正确地调用 RadiAntViewer.exe 并打开指定目录。

可能是语法问题导致了无法正确调用 RadiAntViewer.exe 并打开文件夹。在网页栏或运行栏中输入时,应该按照以下语法进行输入:

raexe://openfolder?url=D:\DICOMFILE\20230325\MR\123

其中,url 参数指定了要打开的文件夹路径,需要替换成实际的文件夹路径。
在注册表中,也需要将命令行修改为以下内容:

"C:\Program Files\RadiAntViewer32bit\RadiAntViewer.exe" /openfolder "%1"

修改完注册表后,重启电脑后应该就可以通过输入
raexe://openfolder?url=D:\DICOMFILE\20230325\MR\123 的方式来调用 RadiAntViewer.exe
并打开指定文件夹了。
 
如果答案对您有所帮助,望采纳。

以下答案由GPT-3.5大模型与博主波罗歌共同编写:
首先,如果您想在网页中调用本地程序并用此程序打开指定目录,您应该在代码中使用超链接指向 raexe 协议,例如:

<a href="raexe://D:\DICOMFILE\20230325\MR\123">打开 RadiAntViewer.exe 并打开指定目录</a>

然后,您需要确保您已经正确修改了注册表项。

修改注册表:

  1. 打开注册表编辑器(Win + R,输入 regedit)并找到 HKEY_CLASSES_ROOT\raexe 键。
  2. 如果该键存在,请先备份它。
  3. 创建名为 shell 的新键,然后在该键下创建名为 open 的新键。
  4. open 键下创建名为 command 的新键。
  5. 右键单击 command 键并选择 修改
  6. 数值数据 栏中输入:"C:\Program Files\RadiAntViewer32bit\RadiAntViewer.exe" "%1",然后单击 确定

这样,当您单击超链接时,Raexe 打开指定目录时,Windows 将启动 RadiAntViewer.exe 并向其传递 D:\DICOMFILE\20230325\MR\123 参数,该参数会显示在程序中。

请注意,如果您的程序提示找不到文件夹或文件,可能是因为路径包含反斜杠字符\,而这些字符在 URL 中是具有特殊含义的,请将它们转义为 %5C。

因此,在网页栏中输入以下内容,应该可以打开指定目录:

raexe://D:%5CDICOMFILE%5C20230325%5CMR%5C123

希望这可以帮助您解决问题。
如果我的回答解决了您的问题,请采纳!