18得票3回答
CreateProcess()运行时出现访问冲突错误

我的目标是在我的程序中执行外部可执行文件。首先,我使用了system()函数,但我不想让用户看到控制台。所以,我搜索了一下,找到了CreateProcess()函数。然而,当我尝试传递参数给它时,不知道为什么,它失败了。我从MSDN上复制了这段代码,并稍作修改:#include <win...

17得票1回答
Delphi 2009中CreateProcess函数出现访问冲突问题

我在我的程序中有以下代码://Code if not CreateProcess(nil, NonConstCmd, nil, nil, True, NORMAL_PRIORITY_CLASS or CREATE_NEW_PROCESS_GROUP, nil, PCh, SI, P)...

14得票8回答
Linux CreateProcess?

我正在Linux平台上开发。 我想在我的库中创建一个新进程,而不是替换当前正在执行的映像。 因为我正在开发一个库,所以我没有主函数。 我希望在调用应用程序关闭后继续运行新进程(就像CreateProcess Windows API一样)。 在Linux中是否可能实现这个功能? 类似于...

14得票2回答
通过CreateProcess()启动的进程如何获取PID?

首先声明,我不是C背景的开发者,而是一名PHP开发者。因此,我的所有编码都是通过借鉴其他示例并对其进行微调来满足我的需求。如果我提出了太基础或明显的问题,请多多包涵。 我正在使用CreateProcess()启动FFmpeg。 int startFFmpeg() { snprintf...

12得票3回答
CreateProcess和ShellExecute的区别

这两者之间的主要区别是什么?我想从我的(C ++)应用程序中仅运行另一个EXE。在继承环境,安全功能等方面是否存在任何差异?

12得票1回答
使用CreateProcess运行批处理文件

我正在尝试使用CreateProcess启动一个新的环境块,并在新的环境块中运行一个批处理文件。 我已经阅读了CreateProcess的msdn示例,并编写了下面显示的代码。 发生的情况是,它将打开新的命令提示符,并停在那里。由于某种原因,它不会运行我的.bat文件。 使用system("...

12得票3回答
为什么Unix有fork()但没有CreateProcess()?

我不明白为什么Unix要使用fork()来创建新进程。在Win32 API中,我们有CreateProcess(),它可以创建一个新进程并将可执行文件加载到其地址空间中,然后从入口点开始执行。但是,在Unix中,我们使用fork来创建新进程,我不明白为什么我想运行另一个进程时要复制我的进程。 ...

11得票1回答
使用句柄从CreateProcess()函数中收集输出信息

我正在使用CreateProcess()函数在Windows系统中从我的GUI应用程序运行一个外部控制台应用程序。我想收集输出以了解是否存在错误。现在我知道必须对hStdOutput进行一些处理,但是我不理解如何做。我是C++的新手和经验不足的程序员,实际上不知道如何处理句柄或者如何建立一个管...

10得票3回答
创建一个新的控制台窗口并使用CreateProcess命令,但是需要覆盖某些标准输入/输出句柄。

如果您使用带有CREATE_NEW_CONSOLE标志的CreateProcess函数,则新进程的标准输入、输出和错误句柄将指向新控制台窗口。如果要覆盖I/O流,可以通过设置STARTUPINFO结构体中的hStdOutput、hStdInput和hStdError字段并设置STARTF_US...

9得票4回答
如何确定生成的进程何时准备好?(使用CreateProcess()和FindWindow())

这应该很容易:我正在创建一个程序,使用win32的CreateProcess()函数生成进程。一旦加载了这个进程,我使用FindWindow找到它的窗口,并使用SendMessage()发送消息。问题是,我如何知道这个窗口准备好接收消息了? 考虑以下内容: HWND wnd; BOOL ...