我正在尝试编写一个脚本来使用通用驱动程序自动安装打印机。我无法确定要使用哪个通用驱动程序(PS 或 PCL)。所以我尝试在批处理脚本中处理这个问题。我首先尝试安装 PCL 驱动程序,如果失败,我安装 PS 驱动程序。当我尝试从 PrintUI.dll 捕获异常时,就会出现问题。
@rundll32 printui.dll,PrintUIEntry /if /b "1.2.3.4 - HP Color LaserJet CP5225n" /f "C:\Windows\System32\DriverStore\FileRepository\hpcu130u.inf_amd64_neutral_33833446aad0d0f1\hpcu130.inf" /r "IP_1.2.3.4" /m "HP Universal Printing PCL 6"
这对于给定的打印机将失败,因为它需要 PS 驱动程序。但是如果我检查%ERRORLEVEL%
总是 0。如果我尝试以下错误处理结果是一个成功的命令,但是会抛出一个错误并且打印机没有安装因此不成功:
@rundll32 printui.dll,PrintUIEntry /if /b "1.2.3.4 - HP Color LaserJet CP5225n" /f "C:\Windows\System32\DriverStore\FileRepository\hpcu130u.inf_amd64_neutral_33833446aad0d0f1\hpcu130.inf" /r "IP_1.2.3.4" /m "HP Universal Printing PCL 6"
&& (echo Command Successful) || (echo Command Failed)
这个测试总是回应“命令成功”,尽管它显然不是。有没有人有一种体面的方式来处理错误,因为我似乎无法让这些工作。
注意:根据我们组织的执行策略,我不能使用 Powershell。
更新:这是我收到的错误。