Как программно изменить значок приложения по умолчанию на пользовательский значок, то есть без использования файла ресурсов (просто поместив значок рядом с файлом EXE).
Я знаю только способ, который использует файл ресурсов,но я хочу знать способ, который делает это программно (код и внешний значок).
Кроме того, я пробовал следующий код:
HANDLE hIcon = LoadImage(0, L"icon.ico", IMAGE_ICON, 0, 0, LR_DEFAULTSIZE | LR_LOADFROMFILE);
HWND hwnd = GetConsoleWindow();
if (hIcon) {
//Change both icons to the same icon handle.
SendMessage(hwnd, WM_SETICON, ICON_SMALL,(LPARAM) hIcon);
SendMessage(hwnd, WM_SETICON, ICON_BIG, (LPARAM) hIcon);
//This will ensure that the application icon gets changed too.
SendMessage(GetWindow(hwnd, GW_OWNER), WM_SETICON, ICON_SMALL, (LPARAM) hIcon);
SendMessage(GetWindow(hwnd, GW_OWNER), WM_SETICON, ICON_BIG, (LPARAM)hIcon);
}
Но этот код просто меняет значок, которыйв левом углу окна, а не EXE-файл приложения.
Как программно установить значок EXE-файла приложения?