当我右键单击任何文件夹时,我想运行此批处理文件(setenv.cmd):
@echo off
SET CPLUS_INCLUDE_PATH=C:\mingw32\include;C:\mingw32\lib\gcc\mingw32\4.9.2\include;
SET PATH=%PATH%;C:\Archivos de programa\7-Zip;C:\Archivos de programa\WinRAR;C:\usr\bin;C:\msys\1.0\bin;C:\gtk2\bin
SET PKG_CONFIG_PATH=C:\gtk2\lib\pkgconfig;C:\usr\lib\pkgconfig
@echo on
我从this page设置了我的注册表,其中包含“提示符”。我的问题是如何从所选目录打开控制台窗口并运行我的批处理文件?
答案 0 :(得分:3)
使用&
。在Windows 8.1上:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Directory\shell\cmdDD]
@="CMD + setenv"
[HKEY_CLASSES_ROOT\Directory\shell\cmdDD\command]
@="cmd.exe /s /k pushd \"%V\"&call \"D:\\full\\path\\to\\setenv.cmd\" \"%V\""
;
请注意,数据中的所有内部"
双引号和\
反斜杠都是转义,并带有\
反斜杠。实际上,数据如下:
==>reg query HKEY_CLASSES_ROOT\Directory\shell\cmdDD\command
HKEY_CLASSES_ROOT\Directory\shell\cmdDD\command
(Default) REG_SZ cmd.exe /s /k pushd "%V"&call "D:\full\path\to\setenv.cmd" "%V"
修改:cmd.exe /s /k pushd "%V"&call "D:\full\path\to\setenv.cmd"
就足够了。附加(尾随)"%V"
仅仅是 my 调试实践(@echo %1
的剩余部分,以确保其正常工作)。
资源(必读):
&
特殊页面)Redirection