Другие языки программирования и технологии

Свои иконки на свои программы c++ или ассемблер

Как поставить свои иконки на проги, желательно на c++ но если нельзя, то на асм.
Dushmyrat Tannyyew
Dushmyrat Tannyyew
831
Нужно просто добавить в проект файл ресурсов с нужными ico-файлами.
Сама Dev C++ не имеет редактора ресурсов, поэтому для его создания можно воспользоваться программой ResEdit.

Изменения (отмечены жирным) в стандартном оконном проекте будут такие:

#include <windows.h>
#include "resource.h"
...
wc.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(APP_ICO));
wc.hIconSm = LoadIcon(hInstance, MAKEINTRESOURCE(APP_ICO));
...
Вместо APP_ICO нужно написать имена своих иконок.

Для консольного приложения тоже можно установить свою иконку, воспользовавшись недокументированной функцией SetConsoleIcon(). Точно также нужно добавить в проект файл ресурсов. Вот полный текст консольного приложения:

#include <iostream>
#include <windows.h>
#include "resource.h"

int main(int argc, char *argv[]) {
    HMODULE hmod = LoadLibrary("Kernel32.dll");
    DWORD (*SetConsoleIcon)(HICON) = (DWORD (*)(HICON))(GetProcAddress(hmod, "SetConsoleIcon"));
    SetConsoleIcon(LoadIcon(GetModuleHandle(NULL), MAKEINTRESOURCE(APP_ICO)));
    FreeLibrary(hmod);
    std::cout << "Press Enter for Exit...\n";
    std::cin.get();
    return 0;
}



После этого получаем программы, которые:
а) имеют свои иконки в проводнике
б) имеют свои иконки в левом углу окна

ЗЫ:
Если что-то не получится или непонятно, напишите мне на почту, попробую объяснить подробней.
(M
( Maxi ______ ) [ Galaxi ]
88 900
Лучший ответ
В свойствах проекта
Амир Косанов
Амир Косанов
97 046
Когда-то, еще в школе, и меня занимал этот вопрос. Если кратко, то:
Иконки можно установить только на исполняемые файлы Windows. На DOS никак.
Иконка приложения - это один из ресурсов, хранящихся в исполняемом файле.
Иконки могут быть разные для каждого размера значка.
Самым простым способом является настройка проекта перед сборкой. Можно еще изменить готовое приложение с помощью программ вроде ResourceHacker и т. п.

Советую почитать http://ru.wikipedia.org/wiki/Portable_Executable, http:/ /www. heaventools. ru/faq. htm, http:// www. xakep. ru/magazine/xs/057/026/1 .asp(убери пробелы)
***просто_ _V.i.p***
***просто_ _V.i.p***
7 069