c语⾔调⽤外部程序,CC++实施外部程序(调⽤外部exe程序)C/C++执⾏外部程序(调⽤外部exe程序)
本⽂只做简单介绍,具体⽤法请参照MSDN。
C中的函数:
<() 函数家族:
exec() 家族的函数将会创建⼀个新的进程来执⾏程序。(不能设置权限,只是单纯的传值执⾏exe)
_execl, _wexecl
_execv, _wexecv
_execle, _wexecle
_execve, _wexecve
_execlp, _wexeclp
_execvp, _wexecvp
_execlpe, _wexeclpe
_execvpe, _wexecvpe
具体使⽤例⼦msdn:ms-help://MS.MSDNQTR.v90.chs/dv_vccrt/html/a261df93-206a-4fdc-b8ac-66aa7db83bc6.htm
2.spawn()函数家族:
spawn() 家族的函数将会创建⼀个新的进程来执⾏程序。(不能设置权限,只是单纯的传值执⾏exe)
_spawnl, _wspawnl
_spawnv, _wspawnv
_spawnle, _wspawnle
_spawnve, _wspawnve
_spawnlp, _wspawnlp
_spawnvp, _wspawnvp
_spawnlpe, _wspawnlpe
_spawnvpe, _wspawnvpe
具体使⽤例⼦msdn:ms-help://MS.MSDNQTR.v90.chs/dv_vccrt/html/bb47c703-5216-4e09-8023-8cf25bbf2cf9.htm
3.system()函数
可⽤于执⾏控制台命令(DOS命令),⽐如
system("cls");//清屏,等于在DOS上使⽤cls命令
WIN32 API
1.WinExec()函数
只提供16位windows程序使⽤。(不能设置权限,只是单纯的传值执⾏exe)
⑴ 函数原型: UINT Win Exec(LPCSTR lpCmdLine, UINT uCmdShow);
⑵ 参数:
lpCmdLine:指向⼀个空结束的字符串,串中包含将要执⾏的应⽤程序的命令⾏(⽂件名加上可选参数)。
uCmdShow:定义Windows应⽤程序的窗⼝如何显⽰,并为CreateProcess函数提供STARTUPINFO参数的wShowWindow成员的值。
⑶ 返回值:
若函数调⽤成功,则返回值⼤于31。若函数调⽤失败,则返回值为下列之⼀:
① 0:系统内存或资源已耗尽。
② ERROR_BAD_FORMAT:EXE⽂件⽆效(⾮Win32.EXE或.EXE影像错误)。
③ ERROR_FILE_NOT_FOUND:指定的⽂件未到。
④ ERROR_PATH_NOT_FOUND:指定的路径未到。
虽然Microsoft认为WinExec已过时,但是在许多时候,简单的WinExec函数仍是运⾏新程序的最好⽅式。简单地传送作为第⼀个参数的命令⾏,还需要决定如何显⽰程序(该程序也许会忽视它)的第⼆个参数。通常,将其设置为SW_SHOW,也可尝试SW_MINIMIZED或dos命令运行exe程序
SW_MAXIMIZED。WinExec不允许⽤CreateProcess获得的所有选项,⽽它的确简单。
2.ShellExecute()函数
ShellExecute不仅可以运⾏EXE⽂件,也可以运⾏已经关联的⽂件。
⑴标准⽤法
ShellExecute函数原型及参数含义如下:
HINSTANCE ShellExecute(HWND hwnd, LPCTSTR lpOperation, LPCTSTR lpFile, LPCTSTR lpParameters, LPCTSTR lpDirectory, INT nShowCmd);
●hWnd:⽤于指定⽗窗⼝句柄。当函数调⽤过程出现错误时,它将作为Windows消息窗⼝的⽗窗⼝。例如,可以将其设置为应⽤程序主窗⼝句柄,即Application.Handle,也可以将其设置为桌⾯窗⼝句柄(⽤GetDesktopWindow函数获得)。
●lpOperation:⽤于指定要进⾏的操作。其中“open”操作表⽰执⾏由FileName参数指定的程序,或打开由FileName参数指定的⽂件或⽂件夹;“print”操作表⽰打印由FileName参数指定的⽂件;“explore”操作表⽰浏览由FileName参数指定的⽂件夹。当参数设为nil 时,表⽰执⾏默认操作“open”。
●lpFileName:⽤于指定要打开的⽂件名、要执⾏的程序⽂件名或要浏览的⽂件夹名。
●lpParameters:若FileName参数是⼀个可执⾏程序,则此参数指定命令⾏参数,否则此参数应为nil或PChar(0)。
●lpDirectory:⽤于指定默认⽬录。
●lpShowCmd:若FileName参数是⼀个可执⾏程序,则此参数指定程序窗⼝的初始显⽰⽅式,否则此参数应设置为0。
待续~~~~~~

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。