昨天我看到了WINAPI的一个函数,这个函数可以运行PE文件,就算PE文件无后缀也可以运行
只需要传入这个文件的绝对位置+文件名,就可以运行这个文件
(这也是taskmgr里为什么会出现TMP后缀文件的原因)
想请问这是哪个函数?我不记得了
请问如何使用WINAPI运行进程
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
raymond27 2023-09-01 08:47关注您说的函数可能是 CreateProcess 函数,它是 Windows API 中用于创建新进程的函数之一。
您可以通过传入要运行的可执行文件的路径和文件名,以及其他相关参数,来调用 CreateProcess 函数来启动一个新进程。该函数会返回一个表示新进程的句柄。这个函数也可以运行没有后缀名的可执行文件,只要您提供了正确的文件路径。
以下是一个简单的示例代码片段,展示了如何使用 CreateProcess 函数来运行一个可执行文件:
#include <Windows.h> int main() { STARTUPINFO si; PROCESS_INFORMATION pi; ZeroMemory(&si, sizeof(si)); ZeroMemory(&pi, sizeof(pi)); // 设置 STARTUPINFO 结构体 si.cb = sizeof(si); // 创建新进程 if (CreateProcess(NULL, "<文件路径>", NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi)) { // 等待新进程结束 WaitForSingleObject(pi.hProcess, INFINITE); // 关闭句柄 CloseHandle(pi.hProcess); CloseHandle(pi.hThread); } return 0; }请将 <文件路径> 替换为您要运行的可执行文件的路径和文件名。在调用 CreateProcess 之后,您可以使用 WaitForSingleObject 函数等待新进程的结束。最后,不要忘记关闭进程和线程句柄。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报