アクティブプロセス測定 その3

http://d.hatena.ne.jp/kkobayashi_a/20060617#p14 の続き。というか、まずはおさらい。

Win32 API でアプリケーションを列挙する方法
http://support.microsoft.com/kb/175030/ja

GetModuleBaseName
http://msdn2.microsoft.com/en-us/library/ms683196.aspx

  • GetModuleBaseNameW (Unicode)
  • GetModuleBaseNameA (ANSI)

OpenProcess
http://msdn2.microsoft.com/en-us/library/ms684320.aspx
Process Security and Access Rights
http://msdn2.microsoft.com/en-us/library/ms684880.aspx

  1. GetForegroundWindow() でアクティブなウインドウを補足
  2. GetWindowThreadProcessId()でウインドウハンドルからPIDを取得
  3. OpenProcess()でPIDからプロセスハンドルを取得
  4. GetModuleBaseName()でプロセスハンドルからモジュール名を取得