ID: Q191656
The information in this article applies to:
You can enable your application to start an instance of Windows Explorer in a system folder, such as Control Panel or Recycle Bin, by passing the class ID of the folder as the filename in a call to ShellExecuteEx.
Under Windows CE, ShellExecuteEx does not support the SEE_MASK_IDLIST or SEE_MASK_INVOKEIDLIST flags. Therefore, you cannot use an LPITEMIDLIST that is obtained by calling SHGetSpecialFolderLocation to open Windows Explorer in a system folder.
Instead, use the following class ID of the system folder that you want to open when calling ShellExecuteEx:
Control Panel - {000314FE-0000-0000-C000-000000000046}
My Computer - {000214A0-0000-0000-C000-000000000046}
Recycle Bin - {000214A1-0000-0000-C000-000000000046}
Databases - {000214A4-0000-0000-C000-000000000046}
You can use the following function to open an instance of Windows Explorer
in the Control Panel folder. Note that the CLSID must be enclosed in
quotes.
BOOL WINAPI OpenControlPanel ()
{
TCHAR szControlPanel[] = L"\"
{000314FE-0000-0000-C000-000000000046}\"";
SHELLEXECUTEINFO sei = {0};
sei.cbSize = sizeof (SHELLEXECUTEINFO);
sei.lpVerb = L"Open";
sei.lpFile = szControlPanel;
sei.nShow = SW_SHOW;
sei.hInstApp = hInstance;
return ShellExecuteEx (&sei);
}
Additional query words:
Keywords : kbLib kbWinCE200 kbGrpShell
Issue type : kbhowto
Last Reviewed: August 22, 1998