ShellExecute
Performs an operation on a specified file.
HINSTANCE ShellExecute(
HWND hwnd,
LPCTSTR lpVerb,
LPCTSTR lpFile,
LPCTSTR lpParameters,
LPCTSTR lpDirectory,
INT nShowCmd
);
ID
|
lpVerb |
Description
|
1.
|
edit
|
Launches an editor and opens the document for editing. If lpFile is not a document file, the function will fail.
|
2.
|
explore
|
Explores the folder specified by lpFile.
|
3.
|
find
|
Initiates a search starting from the specified directory.
|
4.
|
open
|
Opens the file specified by the lpFile parameter. The file can be an executable file, a document file, or a folder.
|
5.
|
print
|
Prints the document file specified by lpFile. If lpFile is not a document file, the function will fail.
|
6.
|
properties
|
Displays the file or folder's properties.
|
.
关键点
.
实现过程
.
//打开记事本
ShellExecute(NULL,"open","notepad.exe",NULL,NULL,SW_SHOW);
//用记事本打开 C:\1.txt文件
ShellExecute(NULL,"open","notepad.exe","C:\\1.txt",NULL,SW_SHOW);
//用IE打开网页,如果你的默认浏览器不是IE,此方法非常有用
ShellExecute(NULL,"open","iexplore.exe","www.baidu.com",NULL,SW_SHOW);
//打开完美世界
CString str="D:\\Administrator\\Documents\\Games\\WMSJ\\WMSJ_Client\\element\\elementclient.exe";
::SetCurrentDirectory(str.Left(str.ReverseFind('\\')));
ShellExecute(NULL,NULL,str,"game:cpw",NULL,SW_SHOW);
//打开 C:\1.txt文件的属性对话框
SHELLEXECUTEINFO SHELL ={0};
SHELL.cbSize = sizeof(SHELLEXECUTEINFO);
SHELL.fMask = SEE_MASK_INVOKEIDLIST ;
// SHELL.hwnd = NULL;
SHELL.lpVerb = "properties";
SHELL.lpFile = "c:\\1.txt";
// SHELL.lpParameters = "";
// SHELL.lpDirectory = NULL;
SHELL.nShow = SW_SHOW;
// SHELL.hInstApp = NULL ;
ShellExecuteEx(&SHELL);
//
如何启动一个程序,直到它运行结束?
SHELLEXECUTEINFO ShellInfo;
memset(&ShellInfo, 0, sizeof(ShellInfo));
ShellInfo.cbSize = sizeof(ShellInfo);
ShellInfo.hwnd = NULL;
ShellInfo.lpVerb = _T("open");
ShellInfo.lpFile = "C:\\Windows\\System32\\cmd.exe";
ShellInfo.nShow = SW_SHOWNORMAL;
ShellInfo.fMask = SEE_MASK_NOCLOSEPROCESS;
ShellExecuteEx(&ShellInfo);
WaitForSingleObject(ShellInfo.hProcess,INFINITE);
//定位文件在文件夹的位置 打开文件夹并选中这个文件
ShellExecute(m_hWnd,NULL,"explorer.exe","e/,/select, C:\\Windows\\System32\\cmd.exe",NULL,SW_SHOWNORMAL); |
.
.
图
.
备注
.http://www.cppblog.com/SpringSnow/archive/2009/04/22/80719.html
.关键点
.
相关链接
相关链接 相关链接