在安装项目中,诸如“.exe、.dll、.js、.vbs”之类的可执行文件是可以接受的,但无法运行.bat
自定义操作中的文件。
问题是如何运行*.bat
安装过程中的文件?
好吧,经过大量搜索和反复试验,我解决了这个问题。我不确定这是否是最好的方法,但它确实有效。
场景如下:我有一个应用程序想要通过 Visual Studio 安装项目进行部署。除了我的应用程序文件之外,我还想在目标目录中创建一个包含批处理 (.bat) 文件的子目录。我希望该文件在安装过程结束时运行。
这就是你要做的:
- 创建一个安装项目并像平常一样进行配置,包括放置批处理文件的子目录(如果您不想将其放在子目录中,可以直接将其放置在应用程序文件夹中)。
- 在“文件系统”视图中(在解决方案资源管理器中右键单击项目->视图->文件系统),添加要执行的批处理文件andcmd.exe (C:\Windows\System32\cmd.exe)
- 打开“自定义操作”视图(在解决方案资源管理器中右键单击项目->视图->自定义操作)
- 右键单击“提交”并选择“添加自定义操作”
- 导航到 cmd.exe 并选择它。
- 打开新创建的自定义操作的属性面板。
- 从 Arguments 属性中删除 /Commit。
- Enter:
/c "[TARGETDIR]subdirectoryname\batchfile.bat"
在 Arguments 属性中,其中 subdirectoryname 应替换为子目录的名称(如果您像我一样将批处理文件放入子目录中...如果没有,则该值应为/c "[TARGETDIR]batchfile.bat"
)和batchfile.bat应该是批处理文件的文件名。
就是这样。一旦安装过程的其余部分完成,现在将执行批处理文件。
为了清楚起见,下面是一个示例:
我的批处理文件:blah.bat
我的子目录:mydir
我的自定义操作的目标 cmd.exe 的参数值将是
/c "[TARGETDIR]mydir\blah.bat"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)