promenlivi

17 отговора 0 прегледа
#1

promenlivi

trqbva mi promenliva koqto pri novo startirane da zapazva stoinosta koqto sme i dali

Отговор
в отговор на smqtai #2

Re: promenlivi

Първо, пиши на кирилица. И второ, за какво точно става въпрос?

Mixy
Отговор
в отговор на Mixy #3

Re: promenlivi

ами трябва ми масив,стойностите на който се променят от самата програма и при повторно извикване на exe-то стойностите на масива да са от последната промяна,и така при всяко ново извикване

Отговор
в отговор на smqtai #4

Re: promenlivi

Ползвай регистри или ini файл
Вапросът ти е пак неясен

Отговор
в отговор на Timo #5

Re: promenlivi

в един масив пазя 10 числа,exe-то ми прави промени в стойностите на числата,след това затварям exe-то и го стартирам отново,и искам стойностите на масива да са от последното стартиране на exe-то,но без да използвам външни фаилове за съхранение на стойностите на масива

Отговор
в отговор на smqtai #6

Re: promenlivi - Integer

uses
Registry


procedure TForm1.FormCreate(Sender: TObject);
var
Reg:TRegistry;
begin
Edit1.Text:='1';
Edit2.Text:='';
Reg:=TRegistry.Create;
Reg.RootKey:= HKEY_CURRENT_USER;
Reg.OpenKey('Software\Name',false);
Reg.CloseKey;
Reg.Free;
end;


procedure TForm1.Button1Click(Sender: TObject);
var
Reg:TRegistry;
begin
Reg:=TRegistry.Create;
Reg.LazyWrite:=True;
Reg.OpenKey('Software\Name',True);
Reg.WriteInteger('Integer_1',StrToInt(Edit1.Text));
Reg.CloseKey;
Reg.Free;
end;

procedure TForm1.Button2Click(Sender: TObject);
var
Reg:TRegistry;
begin
Reg:=TRegistry.Create;
Reg.RootKey:= HKEY_CURRENT_USER;
Reg.OpenKey('Software\Name',false);
Edit2.Text:= IntToStr(Reg.ReadInteger('Integer_1'));
Reg.CloseKey;
Reg.Free;
end;


Нещо такова ама незнам дали ще го разбереш

Отговор
в отговор на smqtai #7

Re: promenlivi

Writing custom data to executable files

Варианта на Тимо е по-лек и лесен, но ако копираш ЕХЕ-то на друг комп, данните се губят.

Mixy
Отговор
в отговор на Mixy #8

Re: promenlivi

Това дето си го пратил ( Writing custom data to executable files
) изобщо не го разбрах, можеш ли да ми го разясниш че ми стана интересно понеже не ми е известен друг начин без външен файл.

Отговор
в отговор на Mixy #9

Re: promenlivi

Ако кода започне да пише във файла си, ще скочат всички антивирусни програми, които са инсталирани на дадения компютър.
Това не е добър стил за запис на данни, освен ако не се прави за вмъкване на сигнатури, подписи и т.н. и то преди да се дистрибутира изпълнимия файл.

Никога не е късно да...
Отговор
в отговор на Eventer #10

Re: promenlivi

> Това не е добър стил за запис на данни

Ами и аз не го одобрявам, но човека това иска.



Mixy
Отговор
в отговор на Timo #11

Re: promenlivi

Ами идеята е, че записваш данните в самия изпълним файл, по-точно в неговия край. На практика можеш да лепнеш отзад каквото си поискаш, но подхода като цяло не е препоръчителен. Прочети статията, в нея са дадени подробни обяснения.

Mixy
Отговор
в отговор на Mixy #12

Re: promenlivi

мерси на всички които писаха

Отговор
в отговор на smqtai #13

Re: promenlivi

Тук винаги има кой да ти помогне, само трябва да питаш

Отговор
в отговор на Eventer #14

Re: promenlivi

пробвал ли си? би трябвало антивирусите да използват по интелигентни механизми - да отсяват това което се лепва точно в и механизъма по който се лепва... на мен ми звучи мощно средство за някой ситуации. не знаех за това но ми стана интересно

Отговор
в отговор на r4ndOm #15

Re: promenlivi

честно казано с по-новите антивирусни не съм.

Но бях чел някъде, че една от проверките за вируси е промяна в изпълнимите файлове (предварително се пази изчислена сигнатура от съдържанието на файла. Повечето програми за системни цели (антивирусните задължително) се самопроверяват по този начин преди да вършат нещо друго.

Да не говорим, че при стартиране в мрежа изпълнимите файлове са в Read-Only folders.

Никога не е късно да...
Отговор
в отговор на r4ndOm #16

Re: promenlivi

Антивирусните програми не реват(Symantec Antivirus с default параметри), но виж Zone Alarm няма начин да не се обади, ако програмката работи с определен порт като клиент или сървър. Имам една такава програмка и след всяка компилация обяснявам на Zone Alarm, че това е същата ми стара програмка, само че леко променена.

Отговор
в отговор на Beco_ #17

Re: promenlivi

да... това беше причината да не я ползвам като бачках с delphi, доста е досадно да и казваш всеки път да не я проверява (не само досадно а и бавно), а и не мисля че е много интелигентно решение за популярността й :)

Отговор
в отговор на r4ndOm #18

Re: promenlivi

На Program control / десен бутон на твойта програма / Options слагаш човка на Authenticate program byfull path name only.

Отговор