1
에 대한 ExtractIcon() 검색하지 아이콘이 내가 뭘하는지의 단지 조각이다 :C/C++ 윈도우 - 모든 실행 여기에
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)를 사용합니다. 탭의 프레임에 아이콘이 전혀없는 것은 정상입니다. – mfontanini
네, 크롬이 가장 좋은 예는 아니지만 ss에 있다는 것을 압니다. 트릴 리언이나 아이콘이있는 다른 프로그램에서는 전혀하지 않습니다. – user1334943
코드가 필요한 모든 오류 처리가 누락되어서 왜 작동하지 않는지 알 수 없습니다. PROCESS_ALL_ACCESS로 모든 프로세스를 열 수 있기를 바랄 수는 없습니다. 너무 많은 권한을 요청합니다. –