私はBHOを書いています。私は外部プロセスを実行したいと思います。 OSがvista以上の場合、ユーザーは保護モードになっている可能性があり、BHOを低い整合性のプロセスで実行します。整合性の低いプロセスでプロセス名を問い合せるには?
私が実行しようとしている外部プロセスは、IEのElvation Policyリストにリストされていて、正常な状態で実行されています。
私は、プロセスが現在実行中であるかどうかをチェックし、そうでない場合にのみ1回作成したいと思います。 問題は、私が使ったときに、私より高い完全性を持つプロセスをクエリできないことです。 HANDLE hProcess = OpenProcess(PROCESS_QUERY_INFORMATION | FALSE、dwPID); 完全性の低いプロセスだけを開くことができます。
完全性の低いプロセスからプロセス名を問い合わせる方法はありますか?
ありがとうございます!
ええと、ReadProcessMemory()を呼び出すことができます。 –
私はEnumProcessModulesとGetModuleBaseNameのために必要です。 VM_READ属性なしでプロセス名を取得する別の方法はありますか? BTW私は、プロセスが存在するかどうかを確認するためにミューテックスなどを使うことができましたが、今は興味があります。私は別の方法があると思う。 – Omer
ちょうどそれは_seems_ that .NetのProcess.GetProcesses()は低い整合性で実行しているときでもリストを与える。私はそれがフードの下で何をするのかは分かりませんが、あなたはそれを見ることができます。 – Rory