中止长时间运行的工作流程

时间:2011-12-13 12:50:53

标签: .net wcf workflow-foundation-4

我们正在使用Windows WorkFlow,WCF和WPF(一种监视工具,它将在我们的项目中显示报告的状态,如IN_PROGRESS,FAILED,SUCCESS)。

工作流程将由WCF中的WorkFlowApplication启动。工作流程将依次调用遗留应用程序(报告生成应用程序),有时遗留应用程序中的操作将需要4到5个小时才能完成。用户需要从wpf应用程序中终止这个长时间运行的工作流。我们尝试使用WorkFlowApplication Abort,但报告生成并没有被杀死。我们从CodeActivity调用了遗留应用程序。

你能否提供一个最好的方法来调用那个遗留应用程序(将调用该dll中的方法)以及在调用工作流程中止时杀死该被调用的应用程序?

谢谢&问候, VARUN

1 个答案:

答案 0 :(得分:0)

我看到的唯一选择是为遗留应用程序创建一个可以在单独进程(例如控制台应用程序)中执行的包装器。 然后形成工作流,然后启动包装应用程序,获取进程处理程序,并在WF中止时最终终止它。