Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Автопатч формы из RCData в exe-файле

490
20 декабря 2008 года
frid-karatel
357 / / 15.09.2007
В-общем, появилась необходимость пропатчить файл приложения и изменить параметры формы в RCData. Программа не зашифрована, т.е. все данные можно просмотреть в Restorator'е.

Собственно, пример данных из RCData
Код:
object Form1: TForm1
  Left = 78
  Top = 281
  BorderStyle = bsDialog
  Caption = 'Form1'
  ClientHeight = 136
  ClientWidth = 331
  Color = clBtnFace
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -11
  Font.Name = 'MS Sans Serif'
  Font.Style = []
  OldCreateOrder = False
  Position = poScreenCenter
  OnClose = FormClose
  OnShow = FormShow
  PixelsPerInch = 96
  TextHeight = 13
  object Label1: TLabel
    Left = 24
    Top = 16
    Width = 289
    Height = 25
    AutoSize = False
    Caption = 'Label1'
  end
end


Необходимо изменить параметры ClientWidth и ClientHeight, а также Top и Left.

Автопатчер Restorator'а не подходит - он цепляется к версии, к тому же он патчит весь ресурс, а мне необъодимо только определенные строки. Остальные же оставить без изменения...

Знаю, что при просмотре Exe-файла в WinHEX'е видна эта информация...

Кто-нибудь сталкивался с такими задачами? Может есть советы или рекомендации? Буду очень признателен...
246
26 декабря 2008 года
GIZMO
1.8K / / 30.07.2004
Цитата: frid-karatel

Кто-нибудь сталкивался с такими задачами? Может есть советы или рекомендации? Буду очень признателен...


Не сталкивался, но на NT-системах это будет:

 
Код:
UpdateResource, BeginUpdateResource, EndUpdateResource

или разбираться со структурой PE в бинарном режиме открывать файл и вперед...
490
26 декабря 2008 года
frid-karatel
357 / / 15.09.2007
GIZMO, уже нашел такое же ;)
Вот ссылки на msdn, если кому интересно:
http://msdn.microsoft.com/en-us/library/ms648049(VS.85).aspx
http://msdn.microsoft.com/en-us/library/ms648004(VS.85).aspx
http://msdn.microsoft.com/en-us/library/ms648046(VS.85).aspx
7
01 марта 2009 года
@pixo $oft
3.4K / / 20.09.2006
Только надо не забыть,что если ты собираешься сделать так,чтоб приложение пропатчило само себя(или уже запущенное приложение),ничего не выйдет–доступ к запущенному файлу на запись запрещён.Придётся или показывать сообщение об ошибке,или прибивать процесс,или использовать метод записи в открытый файл
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог