0

让我们先给你我的代码:

@echo off
echo.Add App Shortcut for use with
echo.Windows+R
echo.A.K.A Windows "RUN" Command
echo.===========================
color 0E
echo.Make Sure you do not run as admin
pause
cls
color 07
del tool.reg
cls
echo.Example: HxD
set /p key="Type the name of the app shortcut here: "
cls
echo.Example: F:\Tools\HxD
set /p appfolder="Type the folder of the app here: "
cls
echo.Example: F:\Tools\HxD\HxD.exe
set /p apppath="Type the path of the app here: "
cls
echo Windows Registry Editor Version 5.00 >> tool.reg
echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths] >> tool.reg
echo "%key%"=Key >>tool.reg
echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\%key%] >> tool.reg
echo "Default"="%apppath%" >> tool.reg
echo "Path"="%appfolder%" >> tool.reg
pause
echo.Launching The Tool
start tool.reg

那么这里的问题是,路径例如 F:\Programs\HxD 。每当输入该路径时,它都会检测到斜杠“\”并停止执行命令。有解决方法吗?谢谢!

4

2 回答 2

2

我建议您使用该REG命令而不是尝试构建注册表文件。例如,像这样:

reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\%key%" /v "Default" /d "%apppath%"
于 2013-06-13T18:45:23.950 回答
1

尽管您应该使用reg add,但您可以通过添加以下内容来使当前代码正常工作:

set appfolder=%appfolder:\=\\%

对于您期望的每个变量\。这将替换每个实例\\以逃避它。

于 2013-06-13T19:02:20.473 回答