[Цитировать]

    nikzzzz
  • 215
  • Стаж: 3 года 8 месяцев
  • Сообщений: 2464
  • Репутация:127

    [+] [-]
Res2Txt.exe
Утилита извлекает текстовые ресурсы [String Table] из файла или группы файлов.
В принципе, это можно сделать и, например с помощью ResHacker, но это часто не слишком удобно.
В основном проблема возникает, когда нужно найти определенную строку , не зная названия файла, к тому-же поиск в ResHacker хотя и есть, не совсем корректно работает с не английскими словами.
В отличии от ResHacker, ресурсы извлекаются не только из указанного файла, но и из .mui файла для установленного в системе языка.
Синтаксис:
Res2Txt.exe Путь_к_файлу [Путь_к_файлу_результата]
Возможны символы подстановки "?*"
Пример:
Res2Txt.exe "c:\Windows\*.*"
Данные сохраняются в файл в каталоге с утилитой , если Путь_к_файлу_результата не указан.
Утилита написана для личных целей - одноразовая задача, поэтому особой поддержки (типа GUI) не будет.
Вложение


Последний раз редактировалось: nikzzzz (2018-07-02 06:47), всего редактировалось 4 раз(а)

[Цитировать]

    korsak7
  • 107
  • Стаж: 3 года 10 месяцев
  • Сообщений: 694
  • Репутация:44

    [+] [-]
А куда извлекает?

[Цитировать]

    nikzzzz
  • 215
  • Стаж: 3 года 8 месяцев
  • Сообщений: 2464
  • Репутация:127

    [+] [-]
Обновил утилиту, теперь можно указать путь для файла-результата.
korsak7,
В файл в каталоге с утилитой.

[Цитировать]

    AZJIO
  • 17953
  • Стаж: 7 месяцев 17 дней
  • Сообщений: 101
  • Репутация:36

    [+] [-]
nikzzzz
а если в ресурсах прописано символами #1054, он именно преобразует в числовой код перед поиском? В последней версии ResHacker пишут что устранили эту проблему и теперь ресурсы отображаются буквами. Вот тоже интересно, сделали только отображение или ещё и поиск. Просто ранее я делал конвертор для текстов в формате #1054

[Цитировать]

    nikzzzz
  • 215
  • Стаж: 3 года 8 месяцев
  • Сообщений: 2464
  • Репутация:127

    [+] [-]
AZJIO, aa
Ресурсы извлекаются api функцией user32.dll LoadStringW , делает ли она какое-либо конвертирование, не знаю.
Ресурсы сохраняются в кодировке UTF8.
Если не сложно, проверь, или выложи пример.

[Цитировать]

    AZJIO
  • 17953
  • Стаж: 7 месяцев 17 дней
  • Сообщений: 101
  • Репутация:36

    [+] [-]
nikzzzz
Там в [RCData] в ResourceHacker было, то есть не в [String Table]. Принудительно сделал #1054 не помогло, извлеклось как есть. Да и может вряд ли оно там появится, это же строковые ресурсы, а те бинарные преобразованные в строку.
Поиск русского текста в ResourceHacker работает.

[Цитировать]

    nikzzzz
  • 215
  • Стаж: 3 года 8 месяцев
  • Сообщений: 2464
  • Репутация:127

    [+] [-]
AZJIO,
54959Поиск русского текста в ResourceHacker работает.
Работает, но встречал баги, не мог найти текст, скопированный из самого ResourceHacker, возможно связано с кодировками или с какими-нибудь спец. символами, может версия была старая.
Мне потребовалось получить заголовок системного окна чтобы узнать его хэндл, но он зависит от языка, пришлось искать dll'ку, и читать его из нее, чтобы не зависеть от языка, из-за чего и написал эту прогу.
А так, утилитка пригодится любителям править разные там BaseBrd.dll.mui ae

[Цитировать]

    AZJIO
  • 17953
  • Стаж: 7 месяцев 17 дней
  • Сообщений: 101
  • Репутация:36

    [+] [-]
nikzzzz
Так в любом случае прибыль очевидна, не открывать же 1000 файлов в ResourceHacker, когда можно найти одним кликом.
Кстати, если добавить в параметры имя ресурса, типа [String Table], то искать можно в заказном, строки то могут быть и в "Диалог" и в "Меню" и в RCData.

[Цитировать]

    nikzzzz
  • 215
  • Стаж: 3 года 8 месяцев
  • Сообщений: 2464
  • Репутация:127

    [+] [-]
AZJIO,
Так я же написал
Утилита написана для личных целей - одноразовая задача
Задача решена, далее для меня она не представляет интереса.
Могу скинуть исходник, если кто-то хочет поковыряться.


Показать сообщения:    

Текущее время: 15-Окт 13:08

Часовой пояс: UTC + 3


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