のアイコンを取得していない私がやっているだけの抜粋です:C/C++のWindows - ExtractIcon()ここではすべての実行可能ファイル
PROCESSENTRY32 pe32;
pe32.dwSize = sizeof(PROCESSENTRY32);
hProcessSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
if (hProcessSnap == INVALID_HANDLE_VALUE) return;
if(!Process32First(hProcessSnap, &pe32))
{
CloseHandle(hProcessSnap); // clean the snapshot object
return;
}
do
{
hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, pe32.th32ProcessID);
HICON icon = ExtractIcon((HINSTANCE)hProcess, pe32.szExeFile, 0);
}
while(Process32Next(hProcessSnap, &pe32));
は、なぜそれが他の人のためのいくつかのプログラムではなくのために働くのでしょうか?それは基本的にそれらだけ、メモ帳、およびそれはアイコンを取得するcmdのプロンプト、他のプログラムです。
クロムは、タブフレーム(AFAIK)ごとに1つのプロセスを使用します。タブのフレームにはアイコンがまったく含まれていないのが普通です。 – mfontanini
さて、私はクロムが最高の例ではないことを知っていますが、ssにあった。それは、トリリアンやアイコンを持っている他のプログラムからでもそれをやっているだけです。 – user1334943
コードに必要なエラー処理がすべて不足しているため、なぜ動作しないのかわかりません。 PROCESS_ALL_ACCESSを使用してすべてのプロセスを開くことができないようにするには、あまりにも多くの権限を要求します。 –