掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ShellExecuteで開くマイコンピュータのサイズと位置を指定する (ID:61003)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
> なんらかの方法でウィンドウハンドルを取得して、MoveWindow()で対処するしかないかと思われます。 マイ コンピュータを他に開いていたら使えない方法です。 #include <windows.h> #include <tchar.h> BOOL CALLBACK EnumWindowsProc( HWND hWnd, LPARAM lParam ) { static TCHAR szTitle[ MAX_PATH ]; ::GetWindowText( hWnd, szTitle, sizeof( szTitle ) / sizeof( TCHAR ) ); if ( !_tcscmp( szTitle, TEXT( "マイ コンピュータ" ) ) ) { *( reinterpret_cast< HWND* >( lParam ) ) = hWnd; return FALSE; } return TRUE; } int main() { HWND hWnd; ::ShellExecute( NULL, TEXT( "explore" ), TEXT( "::{20D04FE0-3AEA-1069-A2D8-08002B30309D}" ), NULL, NULL, SW_HIDE ); ::EnumWindows( EnumWindowsProc, reinterpret_cast< LPARAM >( &hWnd ) ); if ( ::IsWindow( hWnd ) ) { ::MoveWindow( hWnd, 0, 0, 600, 600, TRUE ); ::ShowWindow( hWnd, SW_SHOW ); ::SetForegroundWindow( hWnd ); } return 0; }
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.