Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.14;
Скачать: CL | DM;

Вниз

Уважаемые, помогите разобраться с файлами   Найти похожие ветки 

 
Alibabai   (2004-11-02 13:29) [0]

Вот ест у меня файлик, и необходимо мне постоянно в нем менять какую нить текстовую переменную (допустим какая нить криптоконстанта), но как бы сделать так, чтобы не компилировать каждый раз, а сразу записывать значение в ЕХЕ фаил? Подскажите, плиз, как можно из одной программы поменять значение в  другой, и чторбы потом она еще и работала?


 
[lamer]Barmaglot ©   (2004-11-02 13:31) [1]

Учить ASM - www.wasm.ru


 
TUser ©   (2004-11-02 13:34) [2]

Если размер константы не меняется, то TFileSteam - и никакого асма


 
[lamer]Barmaglot ©   (2004-11-02 13:50) [3]

то TUser ©   (02.11.04 13:34) [2]

>Если размер константы не меняется, то TFileSteam - и никакого асма

Интересно, а как он узнает по какому адресу находится эта константа? А не считает ли случаем чужой ехе свое crc и т.д.

Так что хочешь становиться хакером - учи ASM...


 
Alibabai   (2004-11-02 13:54) [4]

не ну асм, для меня скажем сильно...
А вот допустим, переменная у меня имеет размер 50  символов
я для начала забью это все "******", птом найду смещение,
ну TFileSteam поменяю значение, а вот если мне надо будет в программе использовать не 50 символов, а 35?
просто в строку загнать #13 и все, или не все так просто?


 
palva ©   (2004-11-02 15:58) [5]

Если говорилось о текстовой константе, то нужно использовать ShortString, а там в первом байте стоит длина. Можно поставить первыми символами какую-нибудь уникальную комбинацию типа "Ln7kH2". Потом ее можно поискать в Exe-файле, сразу за ней пойдут используемые символы, а перед ней длина текстовой константы (1 байт).


 
Alibabai   (2004-11-02 16:12) [6]

т.е.
в своей проге я объявляю
var
Str:ShortString="Ln7kH2";
потом, нахожу ее в ЕХЕ шнике
меняю первый байт перед ней на длину строки, которую я хочу прописатьв фаил, и вместо "Ln7kH2" вписываю строку, так?
И тогда если переменная у меня инициирована как , допустим, 50 символов "*", то в таком случае, если я запишу туба значение "w34567", и поставлю  байт=6 (перед этой строкой), то работа программы не нарушится и в программе при обращении к этой строке будет выдано что она ="w34567" а не "w34567****..." ?
я правильно понял?



Страницы: 1 вся ветка

Текущий архив: 2004.11.14;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.026 c
10-1060682938
S@shka
2003-08-12 14:08
2004.11.14
Посоветуйте статьи для начинающего


1-1099078938
Matrex
2004-10-29 23:42
2004.11.14
Экзотика - компонент VirtualTreeview


8-1092337630
Neo_vr
2004-08-12 23:07
2004.11.14
Как отловить на входе аудяхи звук частотой 500 Гц ????


14-1098497352
Думкин
2004-10-23 06:09
2004.11.14
С днем рождения! 23 октября


3-1097584567
alsov1
2004-10-12 16:36
2004.11.14
Что неправильно в скрипте?