C++基础|【千律】C++基础(ShellExecuteEx 函数的相关使用案例)

1.以 Windows 系统自带的浏览器,打开指定的网址。

#include #include #include #pragma comment (lib, "Urlmon.lib")int APIENTRY _tWinMain(_In_ HINSTANCE hInstance, _In_opt_ HINSTANCE hPrevInstance, _In_ LPTSTR lpCmdLine, _In_ int nCmdShow) { //初始化变量 LPCTSTR Execute = _T("msedge.exe"); // 软件路径(完整路径) LPCTSTR Website = _T("https://www.cctry.com"); // 打开和保存网址// 指定浏览器打开网址 SHELLEXECUTEINFO ShellInfo = { 0 }; ShellInfo.cbSize = sizeof(ShellInfo); // 执行信息字节 ShellInfo.lpVerb = _T("open"); // 执行动作 ShellInfo.lpFile = Execute; // 打开软件路径 ShellInfo.lpParameters = Website; // 打开网页地址 ShellInfo.nShow = SW_SHOW; // 显示方式// 返回网址执行状态 BOOL bRetWeb = ShellExecuteEx(&ShellInfo); // 打开失败提示框 if (bRetWeb == FALSE) { MessageBox(NULL, _T("网页打开失败"), _T("提示窗口"), MB_OK); }return 0; }


2. 打开 C:\Windows\System32 目录,并选中 cmd.exe 文件。
#include #include #include #pragma comment (lib, "Urlmon.lib")int APIENTRY _tWinMain(_In_ HINSTANCE hInstance, _In_opt_ HINSTANCE hPrevInstance, _In_ LPTSTR lpCmdLine, _In_ int nCmdShow) { //初始化变量 LPCTSTR Execute = _T("explorer.exe"); // 资源管理器地址 LPCTSTR Filsite = _T("/select, C:\\Windows\\System32\\cmd.exe"); // 指定文件的地址// 指定软件打开文件 SHELLEXECUTEINFO ShellInfo = { 0 }; ShellInfo.cbSize = sizeof(ShellInfo); // 执行信息字节 ShellInfo.lpVerb = _T("open"); // 执行动作 ShellInfo.lpFile = Execute; // 指定软件路径 ShellInfo.lpParameters = Filsite; // 指定文件地址 ShellInfo.nShow = SW_SHOW; // 显示方式// 返回软件执行状态 BOOL bRetFile = ShellExecuteEx(&ShellInfo); // 打开失败提示框 if (bRetFile == FALSE) { MessageBox(NULL, _T("文件选择失败"), _T("提示窗口"), MB_OK); }return 0; }


3. 使用 ShellExecuteEx 函数打开 我的电脑。
#include #include #include #pragma comment (lib, "Urlmon.lib")int APIENTRY _tWinMain(_In_ HINSTANCE hInstance, _In_opt_ HINSTANCE hPrevInstance, _In_ LPTSTR lpCmdLine, _In_ int nCmdShow) { //初始化变量 LPCTSTR Execute = _T("explorer.exe"); // 资源管理器地址 LPCTSTR Filsite = _T("::{20d04fe0-3aea-1069-a2d8-08002b30309d}"); // 指定文件的地址// 指定软件打开网址 SHELLEXECUTEINFO ShellInfo = { 0 }; ShellInfo.cbSize = sizeof(ShellInfo); // 执行信息字节 ShellInfo.lpVerb = _T("open"); // 执行动作 ShellInfo.lpFile = Execute; // 指定软件路径 ShellInfo.lpParameters = Filsite; // 指定文件地址 ShellInfo.fMask = SEE_MASK_INVOKEIDLIST; // 使用选定项目的快捷菜单 IContextMenu 接口处理程序 ShellInfo.nShow = SW_SHOW; // 显示方式// 返回软件执行状态 BOOL bRetFile = ShellExecuteEx(&ShellInfo); // 打开失败提示框 if (bRetFile == FALSE) { MessageBox(NULL, _T("文件打开失败"), _T("提示窗口"), MB_OK); }return 0; }


4. 打开 C:\Windows 目录的文件属性对话框。
#include #include #include #pragma comment (lib, "Urlmon.lib")int APIENTRY _tWinMain(_In_ HINSTANCE hInstance, _In_opt_ HINSTANCE hPrevInstance, _In_ LPTSTR lpCmdLine, _In_ int nCmdShow) { //初始化变量 LPCTSTR Filsite = _T("C:\\Windows"); // 指定文件的地址// 指定软件打开网址 SHELLEXECUTEINFO ShellInfo = { 0 }; ShellInfo.cbSize = sizeof(ShellInfo); // 执行信息字节 ShellInfo.lpVerb = _T("properties"); // 执行动作 ShellInfo.lpFile = Filsite; // 指定路径 ShellInfo.fMask = SEE_MASK_INVOKEIDLIST; // 使用选定项目的快捷菜单 IContextMenu 接口处理程序 ShellInfo.nShow = SW_SHOW; // 显示方式// 返回软件执行状态 BOOL bRetFile = ShellExecuteEx(&ShellInfo); // 打开失败提示框 if (bRetFile == TRUE) { MessageBox(NULL, _T("文件打开成功"), _T("提示窗口"), MB_OK); }return 0; }

【C++基础|【千律】C++基础(ShellExecuteEx 函数的相关使用案例)】

    推荐阅读