You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置URL Protocol使启动的应用使用自身目录而非system32为工作目录

解决方案

你可以通过调整URL Protocol关联的启动命令实现需求,无需修改原有批处理文件:

操作步骤

  1. 修改注册表中HKEY_CLASSES_ROOT\ProtoTest\shell\open\command的默认值,将直接指向批处理的配置改为通过cmd.exe先切换工作目录再启动批处理。
  2. 调整后的完整注册脚本如下:
@echo off
reg add HKEY_CLASSES_ROOT\ProtoTest /t REG_SZ /d "My Description" /f
reg add HKEY_CLASSES_ROOT\ProtoTest /v "URL Protocol" /t REG_SZ /d "" /f
reg add HKEY_CLASSES_ROOT\ProtoTest\shell /f
reg add HKEY_CLASSES_ROOT\ProtoTest\shell\open /f
reg add HKEY_CLASSES_ROOT\ProtoTest\shell\open\command /t REG_SZ /d "cmd.exe /c ""cd /d C:\TestFolder && C:\TestFolder\showPath.bat""" /f
pause
  1. 命令参数说明:
  • cmd.exe /c:执行指定命令后自动关闭命令行窗口
  • cd /d C:\TestFolder:将当前工作目录切换为批处理所在的C:\TestFolder,/d参数支持跨盘符切换目录
  • &&:保证前一条目录切换命令执行成功后,再启动目标批处理

效果验证

重新执行上述注册脚本更新注册表配置后,再通过Chrome访问ProtoTest://启动批处理,打印的工作目录即为批处理自身所在的C:\TestFolder。

内容的提问来源于stack exchange,提问作者user1066231

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.10 01:24:02