こんにちは。 最近質問してばかりですが、何卒ご教授お願いします。
WinXP SP2でタスクマネージャもどきを作っているのですが・・・
#include <psapi.h> #include <tlhelp32.h>
hProcess = OpenProcess(PROCESS_ALL_ACCESS,false,pe.th32ProcessID) ; if(hProcess != NULL) { //モジュールハンドルの取得 if (EnumProcessModules(hProcess,NULL,NULL, &RetSize)) { GetModuleFileNameEx(hProcess, NULL, FileName, MAX_PATH) ;
とまぁごちゃごちゃやってるんですが・・・ 結果はきちんと取得できてるんですが・・・
どうも特定のプロセスをAPIでアクセスするとエラーが出るみたいなんです。 smss.exeとかcsrss.exeみたいなやつです。
エラーは
プロシージャエントリポイントGetProcessImageFileNameWがダイナミックリンクライブラリPSAPI.DLLから見つかりませんでした
です。 PSAPI.DLLは実行ファイルと同じフォルダにありますし、そのDLLもMS提供の再配布可能DLLです。 GetProcessImageFileNameWなんて使ってないのに・・・ PSAPI.libとかのリンクはきちんと出来ると思うのですが・・・ 何か見落としているのでしょうか? |