c++ - 如何在 Windows ( C++ ) 中创建进程以运行另一段代码?
问题描述
我正在尝试在一个简单的 cpp 程序中创建一个进程,并希望在此进程中从不同的源文件运行另一段代码。我找到了CreateProcess
允许我们创建进程的 Windows API,但它似乎只需要 exe 文件来执行。有没有办法在windows中创建一个进程并提供一个函数等来由它执行,类似于线程?
PS:我不是在寻找基于线程的解决方案,因为我想用进程和共享内存来测试一些东西。
解决方案
有没有办法在windows中创建一个进程并提供一个函数等来由它执行,类似于线程?
不,但是你可以做的是让你的程序运行另一个自身的副本,传递命令行参数告诉它需要做什么。您可以使用GetModuleFileName()
获取当前进程的 EXE 文件的完整路径。然后,在您的main()
/WinMain()
中,如果存在任何命令行参数,请运行相应的函数然后退出,否则正常运行您的主逻辑。
推荐阅读
- jquery - 重新初始化 tinyMCE
- flutter - 更改容器边框颜色的颜色
- php - 按列值对多行结果集数据进行分组
- flutter - 如何在 Android Studio (Win10) 中运行单个 Flutter 测试?
- r - R:可以制作雷达图,但是 ggplot 或 plotly 的 3d 表面版本?
- javascript - 在按钮单击时添加一个子 `div` 组件(ReactJS)
- flutter - 错误:参数“onSubmit”不能有值
- c++ - 如何创建用户空间线程?
- python - Tweepy 错误“API”对象没有属性“我”
- pouchdb - createIndex 不是函数