Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > как изменить иконку новова файла пасле save as


Автор: Гость_вова 6.10.2004, 13:37
Как изменить иконку файла который получается пасле "save as" в програмах написаных на visual c++ ?

Автор: Step 6.10.2004, 14:12
если тебя интересует иконка ехе файла то тебе нужно в редакторе ресуров перерисовать иконку с идентификотором ...MAINFRAME

Автор: Гость_вова 7.10.2004, 20:12
мне надо не иконка exe а файла каторый создается после save as.

Автор: Step 8.10.2004, 08:32
а эта информация храниться в реестре

Автор: Гость_вова 8.10.2004, 12:51
не понял, поясни

Автор: Step 8.10.2004, 13:01
под каждый (ну почти под каждый) тип файла (расширение) в реестре есть запись с например
.jpg она ссылаеться на запись jpegfile а та содержит HKEY_CLASSES_ROOT\jpegfile\DefaultIcon и там есть переменная которая и указывать имедж....

то что бы тебе изменить иконку у какогото типа файла тебе нужно сделать соответсвующую запись в реестр

Автор: mr.DUDA 8.10.2004, 22:01
Step прав.
Если программишь в MFC, то можно копнуть в сторону CWinApp::RegisterShellFileTypes.

Автор: Гость_вова 9.10.2004, 23:44
не понял как имено использовать CWinApp::RegisterShellFileTypes и какие параметры паслать

Автор: mr.DUDA 10.10.2004, 09:51
Цитата
не понял как имено использовать CWinApp::RegisterShellFileTypes и какие параметры паслать


1) при создании приложения средствами MFC, нужно указать расширение файла, ассоциируемого с программой (там есть кнопка "Advanced" на 4-м этапе создания приложения). Тогда в ресурсах проги появится дополнительная иконка для собственного типа файла (IDR_MYDOCTYPE или что-то вроде того). Её можно перерисовать.

2) после того, как пункт 1 выполнен, в код программы (в любом месте) нужно вставить следующее:
Код
AfxGetApp()->RegisterShellFileTypes();

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)