CMD:从用户获取文件路径并执行所需的命令

时间:2017-07-17 11:14:28

标签: batch-file cmd

我想创建一个bat文件,该文件从用户获取dll的完整路径并执行regsvr32命令,但我无法以某种方式执行此操作。这就是我试过的:

@echo off
set /p id="Paste full path of the DLL and hit enter"
C:\Windows\System32\cmd.exe /k REGSVR32 %id%

PAUSE

注意:

命令示例:

REGSVR32 /u C:\Windows\System32\cabview.dll

1 个答案:

答案 0 :(得分:0)

Compo和我在你的代码中注意到了一些错误。

首先关闭:

C:\Windows\System32\cmd.exe /k REGSVR32 %id%

有点奇怪。因此,您正在调用cmd执行另一个cmd命令,为什么不执行REGSVR32 %id%。很多新的批处理脚本编写者都会因为启动另一个cmd实例而疯狂。

然后:

REGSVR32 %id%

如果%ID%包含特殊字符或空格,则永远不会有效!即使echo %ID%正常工作!!! 我们需要使用引号(")来强制路径/或%id%这样。

RESVR32 "%id%"

最后:

批处理文件命令 与示例输出不匹配!你错过了/u旗帜

这些是非常简单的错误,我希望您在Stack Overflow中询问之前调试过脚本,这些问题将会被关闭。