如果通过bat 脚本在HKEY_CLASSES_ROOT下新建一个注册表,用于通过浏览器打开一个名为hello.exe的脚本,并允许向这个hello.exe传入一个参数
时间: 2024-05-10 18:17:41 浏览: 131
可以通过以下的bat脚本实现:
```
@echo off
setlocal
rem 设置注册表路径
set reg_path=HKEY_CLASSES_ROOT\http\shell\open\command
rem 设置要运行的脚本名称和参数
set script_name=hello.exe
set script_param=%1
rem 设置要注册的命令
set reg_command="%cd%\%script_name%" %script_param%
rem 新建注册表项
reg add "%reg_path%" /ve /t REG_SZ /d "%reg_command%" /f
```
这个脚本会在HKEY_CLASSES_ROOT\http\shell\open\command下新建一个默认值为要运行的脚本名称和参数的命令,这样当用户通过浏览器打开http链接时,系统会自动调用hello.exe脚本并传入参数。
相关问题
如果通过bat 脚本在HKEY_CLASSES_ROOT下新建一个注册表,用于通过浏览器输入hello://的方式打开一个名为hello.exe的脚本,并允许向这个hello.exe传入一个参数
可以通过以下步骤实现:
1. 创建一个新的文本文件,将其命名为hello.reg,将以下内容复制并粘贴到文件中:
```
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\hello]
@="URL:hello Protocol"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\hello\shell]
[HKEY_CLASSES_ROOT\hello\shell\open]
[HKEY_CLASSES_ROOT\hello\shell\open\command]
@="\"C:\\path\\to\\hello.exe\" \"%1\""
```
2. 将 `C:\path\to\hello.exe` 替换为 hello.exe 文件的实际路径。
3. 将上述文件双击打开,系统会弹出一个警告提示,点击“是”即可添加注册表信息。
现在,当浏览器中输入 `hello://some_parameter` 时,系统会自动执行 hello.exe 并传入参数 `some_parameter`。注意,如果 hello.exe 需要管理员权限才能运行,则需要将注册表项添加到 `HKEY_LOCAL_MACHINE` 而不是 `HKEY_CLASSES_ROOT`。
如果通过bat 脚本在HKEY_CLASSES_ROOT下新建一个注册表,用于打开一个名为hello.exe的脚本,并允许向这个hello.exe传入一个参数
可以使用以下的bat脚本在HKEY_CLASSES_ROOT下新建一个注册表项,用于打开一个名为hello.exe的脚本,并允许向这个hello.exe传入一个参数:
```
REG ADD HKEY_CLASSES_ROOT\.hello /ve /d hellofile /f
REG ADD HKEY_CLASSES_ROOT\hellofile\shell\open\command /ve /d "\"path\to\hello.exe\" \"%1\"" /f
```
其中,将 `path\to\hello.exe` 替换成你的 hello.exe 文件所在的路径。然后将这个脚本保存为 .bat 文件,双击运行即可。注意,需要以管理员身份运行该脚本才能成功创建注册表项。
阅读全文