
C语言编程·执行记事本中的.exe可执行文件
发布日期:2021-05-07 21:08:13
浏览次数:13
分类:精选文章
本文共 958 字,大约阅读时间需要 3 分钟。
学习内容包括《操作系统》课程中的进程管理部分内容,重点学习进程的创建、管理和调度等相关知识。
代码部分以下是实现文件读取和进程创建的C语言程序:
#include#include #include #define LINE 1024
char *ReadData(FILE *fp, char *buf) { return fgets(buf, LINE, fp);}
void someprocess(char *buf) { printf("%s", buf);}
int main() { FILE *fp; char *buf, filename[20]; printf("input file name:"); gets(filename); if ((fp=fopen(filename, "r))==NULL) { printf("open file error!!\n"); return; } buf=(char*)malloc(LINE * sizeof(char)); while(1) { char *p = ReadData(fp, buf); STARTUPINFO si = { sizeof(si) }; PROCESS_INFORMATION pi; BOOL ret; si.dwFlags = STARTF_USESHOWWINDOW; si.wShowWindow = TRUE; ret = CreateProcess(NULL, p, NULL, NULL, FALSE, CREATE_NEW_CONSOLE, NULL, NULL, &si, &pi); Sleep(3000); if(!p) break; } return 0;}
以上代码实现了文件读取和进程创建功能,通过CreateProcess
函数可以启动新的进程来执行外部程序。
发表评论
最新留言
关注你微信了!
[***.104.42.241]2025年03月25日 07时52分46秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
redis 单线程为什么快
2019-03-05
Java 源代码到运行的过程
2019-03-05
Java 中哪些对象可以获取类对象
2019-03-05
linux 的 cp 命令如何复制不提示覆盖
2019-03-05
缓存穿透 / 缓存击穿 / 缓存雪崩 / 缓存一致性
2019-03-05
linux 的 pwd 命令
2019-03-05
linux 的 sleep 命令
2019-03-05
js 的 let var const 区别
2019-03-05
无线掌上B超USONIX-R6线阵B模图像初步
2019-03-05
无线掌上B超USONIX-R6凸阵B模图像初步
2019-03-05
react路由使用以及封装
2019-03-05
vue计算属性和监听器区别
2019-03-05
前端常用知识随手记
2019-03-05
react-redux使用hooks替代connect
2019-03-05
使用 FileUpload 实现文件上传
2019-03-05
11.2.6 时间值的小数秒
2019-03-05
11.2.7 日期和时间类型之间的转换
2019-03-05
附录 B 错误信息和常见问题
2019-03-05
第4章 MySQL 程序
2019-03-05
设置柱形图的柱的宽度
2019-03-05