Zitat von
Daniel B:
Hi,
recht interessant wären Prozeduren von Form1 wie OnShow, OnCreate, OnActivate, OnPaint. Je nachdem welche vorhanden sind.
Die werden schon ziemlich früh ausgeführt, je nach reihenfolge.
Grüsse, Daniel
Diese habe ich zur Auswahl:
procedure Bu_startClick(Sender: TObject);
procedure modificationdate(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure LB_tomirrorClick(Sender: TObject);
procedure MM_CloseClick(Sender: TObject);
procedure Bu_deleteClick(Sender: TObject);
procedure Bu_enterClick(Sender: TObject);
procedure Bu_optClick(Sender: TObject);
procedure Bu_addClick(Sender: TObject);
procedure MM_ueberClick(Sender: TObject);
procedure CB_onstartClick(Sender: TObject);
//procedure FormActivate(Sender: TObject);
procedure Bu_updateClick(Sender: TObject);
procedure CB_mirroronstartClick(Sender: TObject);
FormCreate wird aber schon bei Application.CreateForm(TForm1, Form1);
geladen. Also vor Application.Run;
Trotzdem:
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var
Registry: TRegistry;
s: integer;
t: String;
loadpath: string;
begin
//load registry install-Path
Registry:=TRegistry.Create;
Registry.RootKey:=HKEY_CURRENT_USER;
Registry.OpenKey('Software\Mirror',false);
path:=Registry.ReadString('root');
//--------------------------
//Load Directions
LB_tomirror.Items.LoadFromFile(path+'\Data.txt');
for s := 3 to LB_tomirror.Items.count-1 do
begin
loadpath:=LB_tomirror.Items[s];
if loadpath='' then
begin
end
else
begin
VerzListe:=TStringList.Create;
Label1.Caption:=IntToStr(VerzGroesse(loadpath))+' Byte';
LB_list.Items.assign(VerzListe);
VerzListe.Free;
end;
Registry:=TRegistry.Create;
Registry.OpenKey('Software\Mirror',false);
t:=Registry.ReadString('start');
If t='yes' then
begin
CB_mirroronstart.Checked:=true;
//Bu_startclick(nil);
end;
end;
Registry:=TRegistry.Create;
Registry.OpenKey('Software\Microsoft\Windows\CurrentVersion\Run',false);
t:=Registry.ReadString('mirror');
if t=path+'\mirror.exe' then
begin
cb_onstart.Checked:=true;
end;
registry.free;
end;
var VerzListe : TStringList;
function VerzGroesse(Verzeichnis:string):longint;
var SR : TSearchRec;
Groesse : longint;
begin
Groesse:=0;
if Verzeichnis[length(Verzeichnis)]<>'\' then
Verzeichnis:=Verzeichnis+'\';
if FindFirst(Verzeichnis+'*.*',$3F,SR)=0 then begin
repeat
if ((SR.Attr and faDirectory)>0) and (SR.Name<>'.') and (SR.Name<>'..') then
Groesse:=Groesse+VerzGroesse(Verzeichnis+SR.Name)
else
Groesse:=Groesse+SR.Size;
if (SR.Name<>'.') and (SR.Name<>'..') then
VerzListe.Add(Verzeichnis+SR.Name);
until FindNext(SR)<>0;
FindClose(SR);
end;
Result:=Groesse;
end;
(Anmerkung: Ja, die Function ist aus einem FAQ kopiert, da mir für so etwas die nötigen Programmierkünste fehlen.)
MfG Phil
[/delphi]