2010-03-01から1ヶ月間の記事一覧

インスタンスハンドルとモジュールハンドルの違い

前書き HINSTANCEとHMODULEの違いについて、また、使い分けについて、調べたことをまとめようと思います。 違いは何なのか 歴史的な違い HINSTANCE と HMODULE の違い こちらをご覧ください。(タイトルがまんまかぶってますね) 2行でまとめると、歴史的に…

ウィンドウハンドルから実行ファイル名を取得する

前書き 昨日書いたのですが、間違って消してしまったのでもう一度投稿します。 ソースは残っているのですが、そのほかに何を書いたのかは忘れました。 グーグルキャッシュにも残ってなかった。IEのキャッシュも更新しちゃった。 なので書き直します。 ソース…

プロセスIDからウィンドウハンドルを取得する

前書き 「プロセスIDならわかるけど、ウィンドウハンドルはわからないなー」なんていう状況、よくありますよね? 僕は先ほど初めてそのような状況に出くわしましたけど。 流れ トップレベルウィンドウを列挙 各ウィンドウのプロセスIDを調べる 目当てのプロ…

C/C++でフォルダ(ディレクトリ)のサイズを取得する

VC++でフォルダ(ディレクトリ)のサイズを取得する例って、検索してもひっかからないんですよね。需要ないのかな。 エラーチェックは中途半端なので、安心して使えませんけど。 "C:\System Volume Information"など、特別なアクセス権が必要なフォルダが含…

コマンドライン引数の謎。引数に、スペース(空白)や、引用符を含める方法。

前置き(追記) ちゃんと検索したら、ちゃんと情報が出てきました。 http://www.up-cat.net/%25A5%25B3%25A5%25DE%25A5%25F3%25A5%25C9%25A5%25D7%25A5%25ED%25A5%25F3%25A5%25D7%25A5%25C8%25A4%25CE%25A5%25A8%25A5%25B9%25A5%25B1%25A1%25BC%25A5%25D7%25…

ファイルなのか、ディレクトリ(フォルダ)なのかの判別

IsFile/IsDirectoryっていうのを作ってみました。動作確認はXPのみ。 インクルードするやつ まずこんな感じのをコピってください。 #include <windows.h> #include <tchar.h> // PathIsDirectory() #include <shlwapi.h> #pragma comment(lib, "shlwapi.lib") IsFile関数 // ファイルかどう</shlwapi.h></tchar.h></windows.h>…

Unicodeでprintf

前置き printfじゃなくて、wprintfを使うらしいです。 char なら printf。w_char なら wprintf。そして、TCHAR なら _tprintf。 _tprintfを使う 前処理が必要みたいです。 #include <locale.h> _tsetlocale( LC_ALL, _T("Japanese")); // これが前処理 // // ・・・ // ・・</locale.h>…

WinAPIでディスプレイの解像度を取得する(まとめ)

WindowsAPIで画面のサイズを得る方法は、調べてみたらいくつかあるようです。 中には、タスクバーの領域を除いたサイズを返す関数もあるようです。 GetSystemMetrics式 これはフツーのやり方。 int dispx = GetSystemMetrics(SM_CXSCREEN); int dispy = GetS…

ミスのメモ

検索で飛んで来たあなたのために書いてみました。お役に立てれば幸いです。 std::tolower、ないですよ、どこなんですか。 #include としましょう。 エラー 11 error C2039: 'tolower' : 'std' のメンバではありません。 ですって。(VC++2008EEにて) そういえ…

unsigned __int64から、上位DWORD、下位DWORDを取り出すマクロ

C++

注意 コード中にも書きましたが、符号なし__int64に対して使うと、値が負のときは、 バグの原因になるかもしれません。 コード /* QWORDな値から、上位/下位DWORDを取り出す。 * 符号なしの__int64に対して使うときは、おかしなことになるかもしれない。 * …