我不是C/C#程序员,所以我不能自己开发一个明确的解决方案。
我这里有一个简单的注册表外壳扩展 - 我的目标是使用 2 utils 一个文件 - 我认为使用
&&
符号这意味着 continue if successful
将是解决方案,但事实并非如此。
控制台瞬间弹出窗口,不返回任何内容。但是,当我在
cmd.exe
中复制粘贴命令并将 %1
替换为文件路径时,一切正常。
它是如何工作的?
Windows Registry Editor Version 5.00
[-HKEY_CLASSES_ROOT\*\shell\Optimizers]
[-HKEY_CLASSES_ROOT\*\ContextMenus\Optimizers]
; --- ;
[HKEY_CLASSES_ROOT\*\shell\Optimizers]
@="Optimizers"
"Icon"="C:\\Windows\\System32\\WMPLoc.dll,-102"
"ExtendedSubCommandsKey"="*\\ContextMenus\\Optimizers"
"AppliesTo"="System.FileExtension:=.png"
; --- ;
[HKEY_CLASSES_ROOT\*\ContextMenus\Optimizers\Shell\01_PNG]
@="Optimize PNG"
"Icon"="C:\\Windows\\System32\\ImageRes.dll,-168"
"AppliesTo"="System.FileExtension:=.png"
[HKEY_CLASSES_ROOT\*\ContextMenus\Optimizers\Shell\01_PNG\command]
@="E:\\pngquant.exe 256 --ext .png -f -s 1 --skip-if-larger --nofs \"%1\" && E:\\oxipng.exe \"%1\" -a -i 1 -o max -p --strip all"