在快捷方式 (.lnk) 中执行之前执行批处理文件
Execute a batch file before executing in a shortcut (.lnk)
我有一个名为 Siemens NX 的程序的多个版本。 NX 使用环境变量进行配置。我需要 NX 10.0 使用一组与使用系统环境变量的 NX 7.5 不同的环境变量。因此,我编写了一个批处理文件来设置我需要的环境变量。然而,NX 10.0 有很多不同的程序。我不想为每个程序都创建一个批处理文件。相反,我只想修改快捷方式 (.lnk) 以在开始之前执行批处理文件。例如,
很容易做到这一点
C:\Siemens\NX10\UGII\setup_NX10_environment.bat && C:\Siemens\NX10\UGII\ugraf.exe -nx
但是,命令 window 保持打开状态。如何调用批处理脚本并关闭它然后调用我的程序?
按如下方式为您的批处理脚本提供带有参数的程序
C:\Siemens\NX10\UGII\setup_NX10_environment.bat "C:\Siemens\NX10\UGII\ugraf.exe" -nx
并按如下方式改进该批次:
rem all the original setup_NX10_environment.bat stuff here
%*
exit
或
rem all the original setup_NX10_environment.bat stuff here
call %*
exit
或
rem all the original setup_NX10_environment.bat stuff here
start "" %*
exit
如果您像这样调用可执行文件,控制台 window 可能会保持打开状态:
executable.exe
但是,在可执行文件前面添加 start
会将其与控制台分离。
因此,如果您这样调用可执行文件,控制台将不会保持打开状态:
start executable.exe
总之,重写你的命令如下:
C:\Siemens\NX10\UGII\setup_NX10_environment.bat && start C:\Siemens\NX10\UGII\ugraf.exe -nx
我有一个名为 Siemens NX 的程序的多个版本。 NX 使用环境变量进行配置。我需要 NX 10.0 使用一组与使用系统环境变量的 NX 7.5 不同的环境变量。因此,我编写了一个批处理文件来设置我需要的环境变量。然而,NX 10.0 有很多不同的程序。我不想为每个程序都创建一个批处理文件。相反,我只想修改快捷方式 (.lnk) 以在开始之前执行批处理文件。例如,
很容易做到这一点C:\Siemens\NX10\UGII\setup_NX10_environment.bat && C:\Siemens\NX10\UGII\ugraf.exe -nx
但是,命令 window 保持打开状态。如何调用批处理脚本并关闭它然后调用我的程序?
按如下方式为您的批处理脚本提供带有参数的程序
C:\Siemens\NX10\UGII\setup_NX10_environment.bat "C:\Siemens\NX10\UGII\ugraf.exe" -nx
并按如下方式改进该批次:
rem all the original setup_NX10_environment.bat stuff here
%*
exit
或
rem all the original setup_NX10_environment.bat stuff here
call %*
exit
或
rem all the original setup_NX10_environment.bat stuff here
start "" %*
exit
如果您像这样调用可执行文件,控制台 window 可能会保持打开状态:
executable.exe
但是,在可执行文件前面添加 start
会将其与控制台分离。
因此,如果您这样调用可执行文件,控制台将不会保持打开状态:
start executable.exe
总之,重写你的命令如下:
C:\Siemens\NX10\UGII\setup_NX10_environment.bat && start C:\Siemens\NX10\UGII\ugraf.exe -nx