C语言编程·执行记事本中的.exe可执行文件

时间:2019-02-20
本文章向大家介绍C语言编程·执行记事本中的.exe可执行文件,主要包括C语言编程·执行记事本中的.exe可执行文件使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

1.学习内容
MOOC苏曙光《操作系统》进程管理
2.代码
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
#define LINE 1024

char *ReadData(FILE *fp, char *buf)
{
return fgets(buf, LINE, fp);//读取一行到buf
}

void someprocess(char *buf)
{
printf("%s", buf);//这里的操作你自己定义
}

int main()
{
FILE *fp;
char buf, filename[20], p;
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)
{
    //每次调用文件指针fp会自动后移一行
    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;
    //someprocess(buf);
}
return 0;

}