【问题标题】:Pass Control form one Executable to another C++ [duplicate]将控制从一个可执行文件传递给另一个 C++ [重复]
【发布时间】:2014-05-17 05:19:33
【问题描述】:

是否存在将控制权从一个 exe 文件传递​​到另一个文件的方法,这样当第一个 exe 结束时,第二个 exe 开始工作?

【问题讨论】:

  • @Tadman - 我不同意,fork() 是特定于 UNIX 的。问题对 c++ 是通用的,但不是 OS。在 Windows 应用程序中,该技术必须以不同的方式完成。
  • @Ryyker -- 没有 C++ 特定的方式 -- OP 没有要求 Windows 答案
  • @Soren - 我的观点完全正确。他/她也没有要求 UNIX 解决方案,它只是标记为不使用 fork、exec 等的 C++。支持重复问题声明的参考是 unix 特定的,这个问题不是。
  • @ryyker 有一个exec for Windows
  • @Soren - 嗯,不太好 POSIX(阅读标题为 POSIX for Windows的部分>

标签: c++


【解决方案1】:

exec 系列函数将一个正在运行的程序映像替换为另一个。保留打开的文件和各种其他状态位,这可能是也可能不是您想要的;酌情编写胶水代码。

【讨论】:

    【解决方案2】:

    你没有指定操作系统,所以这里是一个 Windows 特定的答案...

    这里有几种方法:

    1) 使用您自己编写的监控服务应用程序来检查 PID/exenames 的状态。当第一个应用程序不再运行时,服务应用程序可以启动下一个应用程序。通过这种方式,您可以端到端地将任意数量的应用串联在一起,或者只是在应用 1 和应用 2 之间来回切换。Service App

    2) 您可以在第一个应用程序退出时通过调用启动第二个应用程序,反之亦然。

    3) 使用任务调度程序。

    还有很多其他的方法,我个人推荐第一种,因为我用过好几次了,而且很可靠。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-04-24
      • 2013-07-05
      • 2017-05-24
      • 1970-01-01
      • 2020-08-04
      • 2018-01-16
      • 2013-06-26
      • 1970-01-01
      相关资源
      最近更新 更多