梦幻西游17段宝石价格:关于vc++调用 exe文件的问题

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/07 05:10:49
程序整体结构是这样:通过多种方法解决一个问题,然后比较各种方法的优劣.

各种方法我已经编好了,并且在vc++中生成了exe文件.

现在需要一个用户界面,进入之后选择方法,并且调用我已经编好的exe文件.我不知道如何调用exe文件,书上都讲的是调用dll文件,哪位大侠给指点一二,感激不尽.
ShellExecute这个函数我用了之后,怎么老是说handle是个不认识的变量,然后我以为少了什么头文件,就加了#inlude windows.h, shellapi.h 但是还是不认识handle这个参数,说是没有声明的变量.怎么办呢? WinExec这个函数我用了之后是成功的.

界面可以用MFC来做,可以做成菜单(或者按钮)形式,还可以弄点背景图片在上面,调用打开EXE文件的方法最方便的就是使用ShellExecute函数,格式就是一楼所提到的那样,<fully_qualified_path_to_folder>为你exe文件所在路径,例如:"X:\\XXX\\XXX.exe",另外该函数还能打开ie网页和其他各种类型的文件(txt,bmp,jpg,mp3,avi,wmv等等),只要是系统能够识别的都能打开

调用 EXE 文件有个比较简单的方法就是这样

WinExec("c:\\windows\\system32\\cmd.exe",1);

当然上面那位的方法也可以,不过很麻烦.他用的API函数

其实ShellExecute还是很好用的,可以打开任何格式的文件,比如帮助文件。

ShellExecute(handle, "open", <fully_qualified_path_to_folder>, NULL, NULL, SW_SHOWNORMAL);



BOOL ret = 0;
STARTUPINFO info;
memset(&info, 0, sizeof(info));
info.cb = sizeof(info);
info.dwFlags = STARTF_USESHOWWINDOW;
info.wShowWindow = show_hide;
SW_HIDE;
PROCESS_INFORMATION pinfo;
pinfo.hProcess = NULL;
pinfo.hThread = NULL;
pinfo.dwProcessId = NULL;
pinfo.dwThreadId = NULL;

ret = CreateProcess(NULL,
szExePath,
NULL, NULL, FALSE, NORMAL_PRIORITY_CLASS,
NULL, NULL, &info, &pinfo);