コントロールパネルを表示するには,以下の文書が参考になる.
[NT]DOS プロンプトからコントロール パネル ツールを起動する
文書番号: J043021
親ウィンドウを指定して表示する方法は以下のとおり.
typedefvoid __stdcall fnControl_RunDLL( HWND hwnd, HINSTANCE hinst, LPSTR lpszCmdLine, int nCmdShow );
typedef void __stdcall fnLaunchInternetSettingsDialog( HWND hOwnerWnd );
//////////////////////////////////////////////
// インターネットオプションダイアログの表示
BOOL LaunchInternetControlPanel(HWND hOwnerWnd)
{
HINSTANCE hModule = ::LoadLibrary(_T("shell32.dll"));
if( !hModule ) {
TRACE0("Fail to ::LoadLibrary().\n");
ASSERT(0);
return FALSE;
}
fnControl_RunDLL* pfnControl_RunDLL
= (fnControl_RunDLL*)::GetProcAddress(hModule, "Control_RunDLL");
if( !pfnControl_RunDLL ) {
TRACE0("Fail to ::GetProcAddress().\n");
ASSERT(0);
::FreeLibrary(hModule);
return FALSE;
}
pfnControl_RunDLL( hOwnerWnd, ::AfxGetInstanceHandle(), _T("inetcpl.cpl"), SW_SHOW );
::FreeLibrary(hModule);
return TRUE;
}
参照
日付と時刻のプロパティ起動
コントロールパネル起動
DLL関数の動的呼び出し