25.08.2010, 22:22
|
#12
|
Местный
Регистрация: 09.06.2008
Сообщений: 867
Сказал Спасибо: 175
Имеет 468 спасибок в 259 сообщенях
|
Оффтоп
Цитата:
Сообщение от Breadfan
Ну у меня когда-то работало такое чудо мысли:
Оффтоп
delphi Код:
var
MyFile: TStringList;
i:integer;
name, key:string;
Ready, Ready1:boolean;
const
MyFileName = 'c:\tst\myfile.txt';
procedure Init; //Вызывается при включении скрипта
begin
i:=0;
MyFile:=TStringList.Create;
try
MyFile.LoadFromFile(MyFileName);
except// если ошибка, не обращаем внимание
end;
end;
procedure Free; //Вызывается при выключении скрипта
begin
if MyFile<>nil then
begin
MyFile.SaveToFile(MyFileName); // сохраняем при завершении работы скрипта.
MyFile.Free; // освобождаем память
end;
end;
// чтение значения из переменной
function GetValue(ValName: string): string;
begin
result:=MyFile.Values[ValName];
end;
// запись переменной
procedure SetValue(ValName: string; Value: string);
begin
MyFile.Values[ValName]:=Value;
end;
begin
if fromclient and Ready1 then begin
key:=StrtoHex(pck[1]+pck[2]+pck[3]);
name:=('pck2 - '+inttostr(i));
SetValue(name,((key)));
Ready1:=False;
end;
if fromclient and Ready then begin
key:=StrtoHex(pck[1]+pck[2]+pck[3]);
name:=('pck1 - '+inttostr(i));
SetValue(name,((key)));
Ready:=False;
Ready1:=True;
end;
if fromserver and (pck[1]=#$0B) then begin
i:=i+1;//ReadD(220);
key:=StrToHex(pck[220]+pck[221]+pck[222]+pck[223]);//ReadD(220);
name:=('key - '+inttostr(i));
SetValue(name,((key)));
Ready:=True;
end;
end.
- но: не создает файл при его отсутсвии (лень было, да и незачем), сохрание данных в файл происходит при ВЫКЛЮЧЕНИИ скрипта. Скрипт использовался для чтения каких-то там байт из пакета с сервера при входе в игру, ответа клиента (2 пакета) и сохранения этих данных в файл.
|
То что я и писал с самого начала
Цитата:
Для простоты можно использовать стандартную возможность класса TSringList.SaveToFile();
|
__________________
В любом из нас спит гений. И с каждым днем все крепче.
Переходим на протокол нового поколения jabber
|
|
|