我想RunDll32.exe shell32.dll,Control_RunDLL
通过 PowerShell 中的别名启动控制面板小程序。直接运行它可以正常工作,但是当我设置别名时:
set-Alias controlpanel "RunDll32.exe shell32.dll,Control_RunDLL"
并执行它,我得到标准错误消息The term 'RunDll32.exe shell32.dll,Control_RunDLL' is not recognized as the name of a cmdlet,...(snip)
我发现这是由于 runDLL.exe 和 shell.dll 之间的空间造成的。是否可以以某种方式在空格中添加别名?
由于别名允许一个(“单个”)命令使用另一个名称。所以在某种程度上,这不包括参数是可以理解的。(虽然我不确定为什么 PowerShell 不将第二个字符串解析为参数,但是否有任何 2 个单词的命令?)
解决方案是使用一个函数,在我的情况下是
Function controlpanel { RunDll32.exe shell32.dll,Control_RunDLL }
.