複製鏈接
請複製以下鏈接發送給好友

WinExec

鎖定
WinExec是一種函數,該函數只提供對16位機子的兼容。應用程序應該使用CreateProcess函數。
外文名
WinExec
類    別
函數
返回值
函數調用成功,則返回值大於31
參數説明
error,出錯信息

目錄

WinExec注意

該函數只提供對16位機子的兼容。應用程序應該使用CreateProcess函數。
Declare Function WinExec Lib "kernel32" Alias "WinExec" (ByVal lpCmdLine As String, ByVal nCmdShow As Long) As Long
説明
運行指定的程序
返回值
Long,大於32表示成功,請參考FindExecutable函數
參數表
參數 類型及説明
lpCmdLine String,包含要執行的命令行
nCmdShow Long,定義了以怎樣的形式啓動程序的常數值。參考ShowWindow函數的nCmdShow參數
註解
請參考對CreateProcess函數的説明,瞭解在目錄中查找指定文件的順序
VC中如何使用
WINSHELLAPI void WINAPI WinExecErrorA(HWND hwnd, int error, LPCSTR lpstrFileName, LPCSTR lpstrTitle);
WINSHELLAPI void WINAPI WinExecErrorW(HWND hwnd, int error, LPCWSTR lpstrFileName, LPCWSTR lpstrTitle);
參數説明:
hwnd,窗口句柄,一般為NULL。
error,出錯信息。
lpstrFileName 文件名。
lpstrTitle標題名
使用WinExec命令
⑴ 函數原型:
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:指定的路徑未找到。
大於 31 {調用成功}
等於 0 {內存不足}
ERROR_FILE_NOT_FOUND = 2; {文件名錯誤}
ERROR_PATH_NOT_FOUND = 3; {路徑名錯誤}
ERROR_BAD_FORMAT = 11; {EXE 文件無效}
//uCmdShow 參數可選值:
SW_HIDE = 0; {隱藏, 並且任務欄也沒有最小化圖標}
SW_SHOWNORMAL = 1; {用最近的大小和位置顯示, 激活}
SW_NORMAL = 1; {同 SW_SHOWNORMAL}
SW_SHOWMINIMIZED = 2; {最小化, 激活}
SW_SHOWMAXIMIZED = 3; {最大化, 激活}
SW_MAXIMIZE = 3; {同 SW_SHOWMAXIMIZED}
SW_SHOWNOACTIVATE = 4; {用最近的大小和位置顯示, 不激活}
SW_SHOW = 5; {同 SW_SHOWNORMAL}
SW_MINIMIZE = 6; {最小化, 不激活}
SW_SHOWMINNOACTIVE = 7; {同 SW_MINIMIZE}
SW_SHOWNA = 8; {同 SW_SHOWNOACTIVATE}
SW_RESTORE = 9; {同 SW_SHOWNORMAL}
SW_SHOWDEFAULT = 10; {同 SW_SHOWNORMAL}
SW_MAX = 10; {同 SW_SHOWNORMAL}

WinExec程序例

#include<windows.h>
int main()
{
WinExec("notepad.exe",SW_SHOW);//運行記事本
return0;
}