谷动谷力
标题:
C语言中应用程序运行系统命令system()CreateProcess()ShellExecuteEx()
[打印本页]
作者:
fannifu
时间:
2018-6-25 23:44
标题:
C语言中应用程序运行系统命令system()CreateProcess()ShellExecuteEx()
本帖最后由 sunsili 于 2021-11-26 23:52 编辑
C语言中打开一个应用程序可以调用或运行命令system(),也可以调用操作系统的API函数,比如Windows系统可以调用CreateProcess()、ShellExecuteEx()等函数来打开一个应用程序。
举例
#include <stdio.h>
#include <stdlib.h>
int main()
{
printf("在windows上打开记事本程序\n");
system("notepad.exe");
return 0;
}
复制代码
默认路径是源文件的路径。
如果指定别的路径,两种方法:
一是相对当前默认路径指定路径。
二是指定绝对路径。
譬如:
E:\C\c.c 这是源文件
E:\C\abc.exe
E:\D\abcd.exe
C:\A\aaa.exe
如果想执行abc.exe,那么可以不指定路径:
#include <stdlib.h>
int main()
{
char *cmd="abc.exe";
system(cmd);
return 0;
}
复制代码
如果想执行abcd.exe,那么可如下指定路径:
include <stdlib.h>
int main()
{
char *cmd="..\\D\\abcd.exe";
//指定相对路径
//char *cmd="E:\\D\\abcd.exe";
//指定绝对路径
system(cmd);
return 0;
}
复制代码
如果想执行aaa.exe,则必须指定绝对路径:
#include <stdlib.h>
int main()
{
char *cmd="C:\\A\\aaa.exe";
system(cmd);
return 0;
}
复制代码
对于空格问题,可按如下方法解决
#include <stdlib.h>
int main()
{
char *cmd="E:\\AB\" \"CD\\xyz.exe";
//即执行E:\AB CD\xyz.exe
system(cmd);
return 0;
}
复制代码
作者:
fannifu
时间:
2018-6-25 23:46
#include <stdlib.h>
int main()
{
char *cmd="E:\\AB\" \"CD\\xyz.exe";
//即执行E:\AB CD\xyz.exe
system(cmd);
return 0;
}
复制代码
欢迎光临 谷动谷力 (http://bbs.sunsili.com/)
Powered by Discuz! X3.2