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

Вниз

Читаем txt файл из exe!!!   Найти похожие ветки 

 
*BES* ©   (2004-02-10 13:23) [0]

Я запихнул txt файлик в exe своей программы и теперь нада считать и записать оттуда/туда информацию!!!

Дайте пример с Integer и String! Плизз!!!!

Только не удаляйте в другой раздел!!!!!


 
Alex_Bredin ©   (2004-02-10 13:37) [1]


> Только не удаляйте в другой раздел!!!!!

про орешник?


 
Ega23 ©   (2004-02-10 13:51) [2]


> про орешник?

5 баллов!


 
syte_ser78 ©   (2004-02-10 14:03) [3]

может человек под ехе своей программы имеет ввиду самораспаковывающийся архив?


 
Rouse_ ©   (2004-02-10 14:07) [4]

Примерчик чтения..

procedure TForm1.InitRes;
var
tmpList: TStringList;
tmpString: array of Char;
tmpResInfo, hN: Cardinal;
P: Pointer;
I: Integer;
begin
tmpResInfo := FindResource(hInstance, "TEST", RT_RCDATA);
hN := LoadResource(hInstance, tmpResInfo);
P:= LockResource(hN);
SetLength(tmpString,SizeofResource(hInstance,tmpResInfo));
CopyMemory(@tmpString[0],p,Length(tmpString));
tmpList := TStringList.Create;
tmpList.Text := String(TmpString);
I:= 0;
while I < tmpList.Count - 6 do
begin
Inc(TestCount);
SetLength(Test, TestCount);
Test[TestCount - 1].Question := tmpList.Strings[I];
Test[TestCount - 1].Number := StrToInt(tmpList.Strings[I+1]);
Test[TestCount - 1].Ansver[0] := tmpList.Strings[I+2];
Test[TestCount - 1].Ansver[1] := tmpList.Strings[I+3];
Test[TestCount - 1].Ansver[2] := tmpList.Strings[I+4];
Test[TestCount - 1].Ansver[3] := tmpList.Strings[I+5];
Inc(I, 6);
end;
tmpList.Free;
end;


 
Ega23 ©   (2004-02-10 14:10) [5]

Ansver мне больше всего нравится.


 
Юрий Зотов ©   (2004-02-10 14:11) [6]

var
S: string;
begin
with TResourceStream.Create(HInstance, ResName, RT_RCDATA) do
try
SetLenght(S, Size);
Read(S[1], Size)
finally
Free
end
end;

====================================

var
I: integer;
begin
with TResourceStream.Create(HInstance, ResName, RT_RCDATA) do
try
Read(I, SizeOf(I))
finally
Free
end
end;


 
Vint ©   (2004-02-10 15:57) [7]

>Юрий Зотов © (10.02.04 14:11) [6]

вот вопросик в догонку можно?
какой синтаксис расстановок ; в Дельфи
на примере Вашего примера:

var
S: string;
begin
with TResourceStream.Create(HInstance, ResName, RT_RCDATA) do
try
SetLength(S, Size);
Read(S[1], Size) ?
finally
Free ?
end ?
end;


 
Anatoly Podgoretsky ©   (2004-02-10 16:11) [8]

Нормально, поскольку End сам по себе является ограничителем лексем.


 
Vint ©   (2004-02-10 16:13) [9]

>Anatoly Podgoretsky © (10.02.04 16:11) [8]
а процедурки Read,Free почему без ;


 
Anatoly Podgoretsky ©   (2004-02-10 16:15) [10]

После Read идет finally
После Free идет end

Так что ограничители на месте


 
Anatoly Podgoretsky ©   (2004-02-10 16:16) [11]

http://www.delphikingdom.com/lyceum/seminar.asp?LessonID=36


 
Vint ©   (2004-02-10 16:25) [12]

Вот так да?
Уважаемый Anatoly Podgoretsky ©, последний вопросик, а как правильней их расстовлять с точки зрения компилятора, как ЮЗ или обязательно ставить ; в конце процедур? или ему все равно ;)


 
Юрий Зотов ©   (2004-02-10 16:33) [13]

> Vint © (10.02.04 16:25) [12]

В Delphi - все равно. В классическом Паскале - не все равно. Я ставлю именно так лишь потому, что даже такая мелочь тоже дисциплинирует (тоже приучает не писать в коде ни одного символа совсем уж бездумно). Ну и еще потому, что это не отнимает у меня никакого серьезного времени (написав пару раз интерпретатор какого-то языка, начинаешь этот язык даже не то что глубоко понимать, а просто чувствовать, что называется, изнутри).


 
Vint ©   (2004-02-10 16:53) [14]

Ок! сенкс за бесплатный ликбез :)


 
Владислав ©   (2004-02-10 18:08) [15]

> Vint ©

RTFM ;)

В данном случае ";" не завершающий символ Statement, а символ разделяющий Statement.


 
*BES* ©   (2004-02-10 20:01) [16]

СЭНЬКЬЮ ДОРОГИЕ ДРУЗЬЯ!


 
*BES* ©   (2004-02-11 06:16) [17]

ЭНЕЕЕЕЕЕ НЕ СЭНЬКЬЮ!!!!!

ВОПЕРВЫХ ЧТЕНИЕ НЕ РАБОТАЕТ!!!!!!!!!!!!

ВОВТОРЫХ ГДЕ ЗАПИСЬ???????


 
Юрий Зотов ©   (2004-02-11 07:42) [18]

> *BES* © (11.02.04 06:16) [17]

ВОПЕРВЫХ ВЫУВЕРЕНЫЧТОВАМТУТКТОТОЧТОТОДОЛЖЕН?????????????

ВОВТОРЫХ КАКАЯВАМЕЩЕНУЖНАЗАПИСЬЕСЛИВЫВСЕУЖЕЗАПИСАЛИ-ПЕРЕЧИТАЙТЕСОБСТВЕННЫЙВОПРОС!!!!!!!!!!!!!

ВТРЕТЬИХ ЕСЛИУВАСВСЕЖЕЕЩЕНЕТЗАПИСИТОКАКИМЖЕЭТООБРАЗОМВЫСУМЕЛИОПРЕДЕЛИТЬЧТОЧТЕНИЕНЕРАБОТАЕТ????????????????


 
Anatoly Podgoretsky ©   (2004-02-11 08:37) [19]

Для промывки клавиатуры можно использовать спирт, отвертку


 
alex_*** ©   (2004-02-11 09:30) [20]

Уыважаемый *BES* ©, не поделитесь ли вы идеями о том что вы вообще хотите получить? Может без извратов можно будет обойтись?
А то у людей пробелы даже залипать стали.


 
DiamondShark ©   (2004-02-11 10:47) [21]

С записью облом-с принципиальный... Так что не надо так кричать.


 
*BES* ©   (2004-02-11 10:48) [22]

Хачу сделать регистрацию для проги!!!

Допустим 32 запуска Максимум

Он при открытии считывает из ресурса сколько было запусков
и вычитает из них 1 когда запусков 0, прога Не даёт функций!!!

Именно так!

Потом скомпрессирую дабы РесХак ничё не насиловал ну и....


 
}|{yk ©   (2004-02-11 12:59) [23]

А декомпрессию думаешь слабо сделать? Странный тип. Ну а так. Можешь сделать dll, в нее писать нужный тебе текст (так как сам в себя писать не сможешь, ) проверять наличие dll-ки при загрузке проги, читать что нужно ну и писать что нужно. Но это слабенькая защита. Можешь еще контрольную сумму куда-то писать.


 
Anatoly Podgoretsky ©   (2004-02-11 13:04) [24]

}|{yk © (11.02.04 12:59) [23]
В ДЛЛ нет проблем, не надо только октрывать, а защита такого рода очень простая, кто мешает другому туда вместо 20 прописать 2^31


 
Vit@ly ©   (2004-02-11 13:17) [25]

Хорошая дискуссия. Когда вслух обсуждаются элементы защиты ПО.
А еще интересней, что собираются защищать?


 
alex_*** ©   (2004-02-11 13:26) [26]

кто хочет - тот взломает. В реестр прописывать кол-во копий и не мучаться.


 
}|{yk ©   (2004-02-11 13:30) [27]

Ну так пусть пишет не двадцать, а шифрует (благо, вариантов много) и контрольную сумму


 
Vit@ly ©   (2004-02-11 13:34) [28]

<В реестр прописывать кол-во копий и не мучаться>
Я именно так обычно и делаю, или пишу дату "отруба"


 
Юрий Зотов ©   (2004-02-11 14:56) [29]

Вообще-то, для начала было бы неплохо еще и написать программу, которую хоть кто-нибудь станет взламывать.

В связи с чем, а также судя по незнанию азов, продемонстрированному в [22], я не думаю, что проблема защиты уже действительно назрела.


 
Anatoly Podgoretsky ©   (2004-02-11 15:04) [30]

А как еще привлечь к своей программе?



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

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

Наверх




Память: 0.53 MB
Время: 0.019 c
1-6090
ses
2004-02-21 01:36
2004.03.03
Не запускается программа где не установлен Delphi


9-5932
Zorik
2003-08-19 14:55
2004.03.03
Алгоритм числа


3-5956
kaif
2004-02-05 21:22
2004.03.03
Как вызвать диалог настройки строки OLE DB initstring для ADO?


3-5980
Zilog
2004-02-05 11:48
2004.03.03
Динамически создаю таблицы в БДЕ. Проверка существующего имени


3-5940
pashaz
2004-02-06 13:53
2004.03.03
экспорт записей из одной таблицы в другую