繁体   English   中英

生成前事件命令行问题

[英]Pre-build event command line question

我创建了两个应用程序。(控制台应用程序:MyConApp.exe和Windows应用程序:MyWinApp.exe)目的,将MyConApp.exe附加到MyWinApp.exe,并通过MyWinApp的Pre-build事件传输MyConApp.exe参数。

[更新]

MyConApp.exe是解析XSD文件并生成FromXSD.cs文件的小工具。 如果我双击它,它的工作效果非常好。myConAppArgsXSD文件路径

现在, MyWinApp.exe项目使用的FromXSD.cs文件。 我希望在构建时使用FromXSD.cs文件构建MyWinApp.sln。

如果XSD文件有一天更改了。 如果我使用预构建事件命令行方法,则需要自动处理新的XSD文件。 这就是为什么我要执行这三个步骤。

我的程序

第1步。

我将MyConApp.exe复制到MyWinApp.exe的相同路径。

也就是说:在路径** D:\\ learning \\ cs \\ MyWinApp \\ MyWinApp \\ bin \\ Debug **中有两个.exe文件

第2步。

打开MyWinApp项目属性->构建事件->和预构建事件命令行:

输入:

myConApp.exe myConAppArgs

第三步。

保存MyWinApp项目,生成并运行它。

有没有更好的方法来执行此操作或遵循任何常规程序? 感谢您的阅读和回复。

由于事实是您想在构建前事件中执行此操作,因此可以合并步骤1和步骤2。 只需在WinApp的预构建事件中尝试以下操作:

copy /y $(SolutionDir)conApp\$(OutDir)ConApp.exe $(TargetDir)
ConApp.exe -i -k -whatever

因此,您的ConApp将始终在构建前事件中被全新复制。 另外,您应该在WinApp的项目依赖项中进行设置,该依赖项将取决于ConApp。 因此,ConApp将始终在WinApp之前构建。

要访问项目依赖关系,只需在WinApp项目上的解决方案资源管理器中右键单击,然后在上下文菜单中搜索该条目。

这听起来很奇怪,MyConApp.exe会执行任何会影响MyWinApp.exe生成过程的事情吗? 如果确实如此,则它肯定不属于bin \\ Debug目录,在构建发行版时,它必须具有相同的影响。 它属于项目目录。

如果不影响构建,则使用预构建事件是完全不合适的。 然后,您需要解释为什么这是绝对必要的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM