Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Delphi 在构建完成后运行构建后流程_Delphi_Delphi Xe2_Build Automation_Madexcept - Fatal编程技术网

Delphi 在构建完成后运行构建后流程

Delphi 在构建完成后运行构建后流程,delphi,delphi-xe2,build-automation,madexcept,Delphi,Delphi Xe2,Build Automation,Madexcept,我正在使用Delphi XE2和madExcept。我想在构建完成后运行一个进程,包括构建过程结束时发生的事情 将批处理文件放入post build events会导致批处理文件在生成完成之前运行。我想也许我可以使用DOSstart命令生成一个分离的进程,该命令将暂停几秒钟,以便构建可以完成,然后暂停的进程可以完成它的任务。我尝试了以下作为生成后命令: start "" cmd /c "timeout /t 5&RunPostBuild.bat" 但是,Delphi没有打开单独的窗口并

我正在使用Delphi XE2和madExcept。我想在构建完成后运行一个进程,包括构建过程结束时发生的事情

将批处理文件放入
post build events
会导致批处理文件在生成完成之前运行。我想也许我可以使用DOS
start
命令生成一个分离的进程,该命令将暂停几秒钟,以便构建可以完成,然后暂停的进程可以完成它的任务。我尝试了以下作为生成后命令:

start "" cmd /c "timeout /t 5&RunPostBuild.bat"
但是,Delphi没有打开单独的窗口并继续构建过程,而是打开一个窗口,等待5秒钟,运行
RunPostBuild.bat
,然后完成构建过程。结果是一样的<代码>RunPostBuild.bat仍然在madExcept执行其任务之前运行


是否有人知道如何在构建过程的端自动运行一个过程,包括madExcept之类的东西?

似乎没有一种方法可以单独从IDE来实现这一点。但是,如果创建要运行一次的计划任务,请删除触发器(这样任务就没有运行时间的计划),然后可以向
post build events
添加命令以按需运行任务。Delphi将立即返回并完成构建过程,即使任务尚未完成

通过在计划任务运行的批处理文件的开头放置一个
超时/t5
,IDE完成构建时将经过5秒,然后批处理文件中的其余命令将执行

要添加到生成后事件的命令是:

schtasks /run /tn "Name of scheduled task"

它工作非常可靠。

如果您可以禁用madExcept在IDE中所做的后期处理,则可以通过运行madeExceptPatch.exe将其添加为后期生成操作的一部分。建议使用-gd标志。

这正是我处理问题的方式。事实上,我根本没有安装madExcept软件包,只是在我的后期构建中做了一个简单的madexceptpatch。我更喜欢这个解决方案。谢谢大家!