Как я могу найти значок моего приложения?

Я пытаюсь загрузить значок, связанный с приложением, которое вызвало мою функцию.

Я решаю проблему для приложений с графическим интерфейсом так:

AfxGetApp()->LoadIcon(128); // 128 is the IDR_MAINFRAME icon

Однако функции Afx при поиске ресурса не работают для некоторых приложений без графического интерфейса, так как afxCurrentResourceHandle нулевой.

Как лучше найти значок мэйнфрейма?

PS. в настоящее время я могу обойти это путем тестирования afxCurrentResourceHandle != NULL... хотелось бы сделать лучше

1 ответ

Похоже, вы предполагаете, что только приложения MFC будут вызывать вашу функцию. Если так, то как насчет:

HICON hIcon = AfxGetMainWnd()->GetIcon( TRUE );
Другие вопросы по тегам