Я работаю с экспресс-версией Visual Studio. Поэтому использование функций, вызывающих MAKEINTRESOURCE, не может быть и речи. Я пытаюсь установить значок приложения, переопределив функцию getAdditionalClassInfo.Установка значка программы без ресурсов с помощью WIN32 API
WNDCLASSW *Robot::getAdditionalClassInfo(void) const {
WNDCLASSW *wc = Window::getAdditionalClassInfo();
HANDLE hIcon = LoadImage(NULL, L"imagepath/image.png", 32, 32, LR_LOADFROMFILE);
wc->hIcon = .....;
return wc;
}
Кто-нибудь знает, как я могу установить этот значок БЕЗ использования ресурса?
Вы должны использовать ресурс. Использование Express Edition в порядке, когда у вас есть много свободного времени, чтобы выяснить, как написать файл .rc. Это подразумевается как учебное издание. –
В вашем вызове 'LoadImage' отсутствует параметр типа (IMAGE_ICON'), и я не знаю, принимает ли Windows непосредственно загрузку PNG-файлов в виде значков; вы должны использовать такую программу, как Gimp, чтобы сделать ее фактическим файлом значка (.ico). Также, как сказал Ханс, вы можете «создавать» ресурсы с помощью экспресс-версии, вам нужно просто написать файл .rc вручную (версия Express поставляется с компилятором ресурсов, хотя у него нет редактора ресурсов). – Medinoc
Не углубляйтесь в это. Либо сделайте вашу жизнь терпимой, получив бесплатный редактор ресурсов для использования с Express, либо купите коммерческое издание. – SChepurin