1) Узнаем на чем написана программа. Для этого берем инструмент Exeinfo PE, открываем в нём файл и смотрим:
Как видим наша программа написана на Microsoft Dot.Net Framework (говоря простым языком C#), плюс защищена обфускацией (от глаз любопытных). Локализовать программу в таком виде не удастся.
2) Снимаем защиту с программы. Для этого воспользуемся инструментом de4dot. Утилита консольная, но можно воспользоваться параметрами по умолчанию и просто в проводнике перетянуть файл программы WinAIO Maker Professional v1.3.exe на файл утилиты de4dot.exe:
Утилита отработает и в этой же папке появится новый файл с именем WinAIO Maker Professional v1.3-cleaned.exe. Запустите этот файл, чтобы удостовериться в работоспособности распакованной версии. Бывает, что программы после снятия защиты не работают. Но в данном случае вроде проблем нет - приложение запустилось и показало главное окно. Готово! Можно русифицировать.
3) Выбор инструмента для локализации. Для начала попробуйте загрузить файл программы в один из шаблонных редакторов Radialix, Passolo, Sisulizer и т.д. Но скажу сразу, что положительного результат можно добиться только в редакторе Radialix в виду того, что все строки в программе, которые нужно перевести, являются жестко-закодированными. Чтобы эти строки Radialix показал, при создании проекта локализации, отметьте флажок "Извлечение жестко-закодированных строк", вот так:
Затем на следующей вкладке "Локализованные файлы" выберите для типа создаваемых файлов - создание локализованных файлов:
Наконец создайте проект. Обратите внимание на ошибки. Редактор сообщает, что формы были реконструированы, поэтому можно попытаться создать локализованный файл и, возможно, он будет работоспособным (для этого требуется доскональное тестирование полученного файла). Но если вы выполните поиск строк для перевода, например те, что видны в главном окне программы, то найдете их в секции жестко-закодированных строк:
Переводить необходимо только те строки, которые вы видите в интерфейсе программы. Воспользуйтесь поиском, чтобы найти нужную строку.
====================
Локализацию программы можно также выполнить другим инструментом - Simple Assembly Explorer. Он менее удобен, чем Radialix, но зато работает более корректно. На сайте представлены версии как для 32-бит приложений, так и для 64-бит. Наша программа является 32-бит, поэтому берем соответствующую разрядность инструмента. Запустите его. В левой панели главного окна отображается дерево каталогов, а в правой - список файлов в выбранной папке. Выберите папку, в которой находится файл программы, затем в правой панели сделайте двойной щелчок по файлу WinAIO Maker Professional v1.3-cleaned.exe. Откроется новое окно с с нашей программой, но уже декомпилированной.
Переводить необходимо только те строки, которые вы видите в интерфейсе программы. Воспользуйтесь поиском, чтобы найти нужную строку. Например, найдем строку "Real Time WIM Editor". Для этого в панели инструментов утилиты введите в строке поиска искомую строку, а тип поиска из выпадающего списка выберите "String":
Затем нажмите кнопку "Next" и, если такая строка есть, то она будет показана
Переведем её. Сделайте по строке двойной щелчок. Откроется диалоговое окошко правки. Введите перевод (никаких ограничений на длину строки нет - в разумных пределах конечно, поэтому можно делать полноценный перевод):
Затем нажмите "ОК". Строка будет заменена на переведенную.
Если вы просмотрите листинг этого модуля полностью, то найдете здесь все строки из главного окна программы. Обратите внимание, что все строки, которые можно переводить (не все подряд!), описаны опкодом ldstr, поэтому при просмотре листинга на предмет строк для перевода, ориентируйтесь именно на этот опкод.
Вот так, потихоньку, не спеша переводите приложение. К сожалению, утилита не позволяет сохранить проект перевода, поэтому переводить придется одним махом, не закрывая программы. То есть перевели пару строк, создайте локализованный файл с новым именем, запустите его и посмотрите на результат. Если все в порядке, переводите дальше и потом снова создайте локализованный файл, перезаписав предыдущий. И так до конца, пока результат вашей работы не будет вас полностью удовлетворять. В противном случае, если вы закроете утилиту, работу придется начинать заново. Можно конечно загрузить уже частично локализованный файл, но многократная перекомпиляция программы сделает её неработоспособной.
Чтобы сохранить локализованный файл, нажмите на панели инструментов кнопку "Save". Откроется диалог сохранения файла, где укажите другое имя, например к уже существующему имени припишите единичку, и нажмите "Открыть":
Утилита сообщит об успешном сохранении сборки.
В итоге вот как получилось главное окно программы у меня:
Желаю удачи!