|

Руcификация своими руками
Xakep, номер #044, стр. 044-028-7
STRINGTABLE
{
1, "Не удается открыть файл %%.\n\nПроверьте наличие диска в устройстве."
3, "Не удается найти файл %%.\n\nСоздать новый файл с таким именем?"
5, "Файл %% уже существует.\n\nЗаменить его?"
10, "Текст в файле %% был изменен.\n\nСохранить изменения?"
11, "Безымянный"
12, " - Блокнот"
}
И последним номером идет RCDATA.
object FormMain: TFormMain
Left = 128
Top = 62
HorzScrollBar.Visible = False
VertScrollBar.Visible = False
ActiveControl = ChkBoxAutorun
BorderIcons = []
BorderStyle = bsNone
Caption = ' W i n B o o s t 2 0 0 1 G o l d E d i t i o n '
ClientHeight = 453
ClientWidth = 613
Color = 8568008
Font.Charset = DEFAULT_CHARSET
Font.Color = 3355443
Font.Height = -9
Font.Name = 'MS Sans Serif'
Font.Style = []
Icon.Data = {
0000010001002020000000000000A80800001600000028000000200000004000
}
OldCreateOrder = True
Position = poScreenCenter
Scaled = False
OnCloseQuery = FormCloseQuery
OnCreate = FormCreate
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 13
object CoolForm1: TCoolForm
left = 0
top = 0
width = 613
height = 453
Align = alClient
Picture.Data = {
07544269746D617028B80C00424D28B80C000000000036000000280000006502
}
OnMouseMove = SemuaMouseMove
Mask2 = {00000000}
end
То, что в виде цифр, - это рисунок и значок в виде двоичного кода. При извлечении становятся обычными файлами. Здесь частично действуют правила диалогов, например, стили и размер объекта. Только записаны они в другом виде. Раздел RCDATA бывает только в программах, сделанных на Дельфи. Сюда навалено в одну кучу все подряд - текст, рисунки, звук, видео, меню. Для русификации надо изменять Caption = 'ХХХХ' и Hint = 'ХХХХ'. Иногда ресурсы RCDATA записаны в виде HEX кода.
Результат
После того как переведены все меню, диалоги, стринги и перерисованы надписи на рисунках, русификация в принципе готова. Осталось создать результат, то есть патч, который будет заменять все измененные вами ресурсы у других. Патч можно сделать и в Restorator-е, и в сторонних программах. Допустим, у тебя есть в одной папке оригинальный файл notepad.exe и измененный файл notepad1.exe. Открываем в Restorator-е измененный файл, запускаем мастер создания патчей (Tools-> Create ResPatcher...) Next, вводим имя оригинального файла notepad.exe. Дальше вводим имя файла, который получится после запуска патча, всякие инструкции и свои координаты. В патч войдут все измененные в Restorator-е ресурсы (они отмечены стрелочками). Кстати, сам патч тоже сжат, так что просто так ресурсы, которые в нем содержатся, из него не достанешь.
Как все удачно пропатчить
Патч перед заменой ресурсов сравнивает размер файла с тем, на основе которого его делали. Если размер не совпадает, то облом. После замены ресурсов файл записывается поверх старого, а старый сохраняется как backup (если не снята отметка в патче). Так что если во время замены ресурсов данная программа открыта или файл «только для чтения», то тоже облом.
Назад на стр. 044-028-6 Содержание Вперед на стр. 044-028-8
|