![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Сумрачная тень
Форумчанин
Регистрация: 05.03.2009
Сообщений: 689
|
![]()
Добрый день!
Собственно сабж. Задача вычитки всех ресурсов типа RT_ICON уже решена, получаю HICON и ResID и массив LangIDs каждого ресурса RT_ICON. Но помимо этих данных у иконки есть имя, например 'MY_ICON1". Собственно вопрос: как получить это имя? Весь MSDN перерыл, правда только раздел "Resource Icons" и все функции, касающиеся ресурсов иконок. Но там тщетно. Получаю обозначенные 3 параметра с помощью трехзвенки функций-перечислений EnumResourceTypes, EnumResourceNames и EnumResourceLanguages. Ткните мордой, куда еще копать в плане получения имени ресурса? Может копать какой-то конкретный тип ресурса?
"ковыряю изнутри" (с)
|
![]() |
![]() |
![]() |
#2 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]() Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
![]() |
![]() |
![]() |
#3 |
Сумрачная тень
Форумчанин
Регистрация: 05.03.2009
Сообщений: 689
|
![]()
она возвращает ресурс lpszName типа PChar, который после преобразования DWORD(lpszName) дает индекс ресурса в модуле. Простое присвоение строке iriName:=lpszName дает AV.
Имеете в виду тип реурса RT_STRING? Я подразумеваю, что именем ресурса все не просто в плане наличия множества языковых локалей, собственно для чего и нужна функция EnumResourceLanguages. Т.е. строковое имя ресурса может быть на разных языках, если варианты имен были указано при сборке ресурса. А вообще имя ресурса и его ID это не одно и тоже. Или я не прав?
"ковыряю изнутри" (с)
Последний раз редактировалось Stilet; 13.02.2014 в 15:57. |
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
нет, там написано что если тип передан не идентификатором готовым а строкой то он вернет строковое имя.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
#5 |
Сумрачная тень
Форумчанин
Регистрация: 05.03.2009
Сообщений: 689
|
![]()
поясните пожалуйста, то значит строкой?
Вот код: Код:
"ковыряю изнутри" (с)
|
![]() |
![]() |
![]() |
#6 |
Сумрачная тень
Форумчанин
Регистрация: 05.03.2009
Сообщений: 689
|
![]()
Понимаю, что нужно вместо lpszName = PChar(Integer) подставить символ # в имя, чтобы возвращалось имя... Ситуация в том, что я не знаю имен ресурсов иконок. Поэтому делаю перечисление. Индексы ресурсов я получил. Как теперь извлечь имена этих же ресурсов?
Например, когда мы пишем rc-файл для компиляции ресурса, обычно делаем так: Код:
"ковыряю изнутри" (с)
|
![]() |
![]() |
![]() |
#8 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]() Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
![]() |
![]() |
![]() |
#9 |
Сумрачная тень
Форумчанин
Регистрация: 05.03.2009
Сообщений: 689
|
![]()
Я читал этот кусок раз 30 наверно точно. Можно на строчке кода вызова функции показать? Я уже проверял, нет разницы между RT_ICON и '#3' в параметре lpszType. Тогда в чем разница?
"ковыряю изнутри" (с)
|
![]() |
![]() |
![]() |
#10 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,372
|
![]() |
![]() |
![]() |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Получить имена физических дисков. | Ant-kul | C# (си шарп) | 2 | 16.12.2012 15:08 |
Получить имена всех листов в книге | Temnota | Microsoft Office Excel | 6 | 26.12.2009 07:36 |
Получить список ресурсов и сохранить их отдельно | Alex Cones | Общие вопросы Delphi | 16 | 14.11.2009 13:45 |
Получить HWND рабочего стола без иконок | Son | Win Api | 4 | 24.06.2009 15:57 |
Получить доменные имена | lamerx | Работа с сетью в Delphi | 1 | 10.10.2008 16:57 |