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 に答える