備忘録 Migemo を使ってローマ字入力で検索できるようにする [C++Builder] C++Builder で作るアプリに C/Migemo を使ってローマ字入力のまま検索する機能を実装する方法です。サンプルとして Migemo を使った簡易な grep コマンドを作ってみます。窓替えが最新の migemo.dll と di... 2025.03.17 備忘録
備忘録 hWndからpidやEXE名を取得、pidからhWndやEXE名を取得、EXE名からpidやhWndを取得する方法一覧 [C++Builder] 「hWnd から pid はどう取得するのか」「hWnd から EXE名はどう取得するのか」などの変換方法をまとめてみました。一覧変換方法の一覧です。変換するには「どの Win32API を使うのか」といった変換方法の概要を記載しています。... 2025.01.05 備忘録
備忘録 UI Automation でアプリ一覧を取得する [C++Builder] 「タスクバーに載っているアプリ一覧を取得する」方法を調べていたところ stackoverflow の List all running Taskbar applications with .NET に「UI Automation」を使った回... 2025.01.04 備忘録
備忘録 二重起動せずアクティブ化するEXEにする [C++ Builder] 常駐アプリを作っていると、二重起動しないようにしたくなります。更にEXEを実行したなら常駐状態からアクティブ状態になると便利です。これを実現するには、Mutex で二重起動を防ぎ、起動済みプロセス一覧からEXE名+ウィンドウ名で一致するウィ... 2024.12.29 備忘録
備忘録 プロセスIDからウィンドウハンドルの一覧を取得する [C++Builder] プロセスID からウィンドウハンドルを取得する方法です。プロセスIDからウィンドウハンドルを探す Win32API は無いようです。EnumWindows()して探します。EnumWindows()のコールバックに渡されたウィンドウハンドル... 2024.12.24 備忘録
備忘録 タスクバーの通知領域に常駐するアプリを作る [C++Builder] 起動したら通知領域にアイコンを表示する常駐アプリの作り方です。次のような特徴を持つアプリです。起動時にフォームが表示されない。タスクバーの起動アプリ一覧に載らない。通知領域にアイコンが表示される。通知領域のアイコンを左クリックすると、アプリ... 2024.12.08 備忘録
備忘録 アプリ起動、終了、最小化、元に戻すのイベント発生順序 [C++Builder] C++Builder のアプリ起動、終了、最小化、元に戻したときのイベントの発生順序を記載します。C++Builder のアプリを起動すると Form の OnCreate や OnShow イベントなどが呼ばれます。それらのイベントがどの... 2024.11.17 備忘録
備忘録 マウスカーソルがあるモニターの画面中央にFormを表示する [C++Builer] マルチモニター環境でマウスカーソルがあるモニターに Form ウィンドウを表示する方法です。アプリを起動したり再表示したりしたとき、多くのアプリは前回と同じ位置に表示されます。マルチモニター環境で窓替えやランチャーのようなアプリを使う場合に... 2024.11.03 備忘録
備忘録 WH_CBT フックを使用して、アプリの起動を検知する [C++Builder] 自アプリ以外のアプリが起動したことを検知する方法です。WH_CBT フックをグルーバルフック指定で起動すると、自アプリ以外のアプリのウィンドウ作成やフォーカス取得時のイベントを処理できるようになります。これらのイベントを利用してアプリの起動... 2024.10.21 備忘録
備忘録 wchar_t の文字列を char の文字列に変換する [C++Builder] Win32API で取得する各種の情報は wchar_t * 型の文字列で返ってくるので char * 型に変換したい事があります。その変換方法です。UnicodeString を使う方法とwcstombs_s を使う方法を記載します。どち... 2024.10.15 備忘録