Programlama yapalım ve Öğrenelim. - Delphi Eğitim176
  Ana Sayfa
  .NET Eğitim Notları
  Visual C# .NET Örnek Kodları
  VisualBasic.NET Örnek Kodları
  J# Örnekleri
  ASP.NET Örnek Kodları
  Delphi Eğitim
  => Delphi Eğitim1
  => Delphi Eğitim2
  => Delphi Eğitim3
  => Delphi Eğitim4
  => Delphi Eğitim5
  => Delphi Eğitim6
  => Delphi Eğitim7
  => Delphi Eğitim8
  => Delphi Eğitim9
  => Delphi Eğitim10
  => Delphi Eğitim11
  => Delphi Eğitim13
  => Delphi Eğitim14
  => Delphi Eğitim15
  => Delphi Eğitim16
  => Delphi Eğitim17
  => Delphi Eğitim18
  => Delphi Eğitim19
  => Delphi Eğitim20
  => Delphi Eğitim21
  => Delphi Eğitim22
  => Delphi Eğitim23
  => Delphi Eğitim24
  => Delphi Eğitim25
  => Delphi Eğitim26
  => Delphi Eğitim27
  => Delphi Eğitim28
  => Delphi Eğitim29
  => Delphi Eğitim30
  => Delphi Eğtim31
  => Delphi Eğitim32
  => Delphi Eğitim33
  => Delphi Eğitim34
  => Delphi Eğitim35
  => Delphi Eğitim36
  => Delphi Eğitim37
  => Delphi Eğitim38
  => Delphi Eğitim39
  => Delphi Eğitim40
  => Delphi Eğitim41
  => Delphi Eğitim42
  => Delphi Eğitim43
  => Delphi Eğitim44
  => Delphi Eğitim45
  => Delphi Eğitim46
  => Delphi Eğitim47
  => Delphi Eğitim48
  => Delphi Eğitim49
  => Delphi Eğitim50
  => Delphi Eğitim51
  => Delphi Eğitim52
  => Delphi Eğitim53
  => Delphi Eğitim54
  => Delphi Eğitim55
  => Delphi Eğitim56
  => Delphi Eğitim57
  => Delphi Eğitim58
  => Delphi Eğitim59
  => Delphi Eğitim60
  => Delphi Eğitim61
  => Delphi Eğitim62
  => Delphi Eğitim63
  => Delphi Eğitim64
  => Delphi Eğitim65
  => Delphi Eğitim66
  => Delphi Eğitim67
  => Delphi Eğitim68
  => Delphi Eğitim69
  => Delphi Eğitim70
  => Delphi Eğitim71
  => Delphi Eğitim72
  => Delphi Eğitim73
  => Delphi Eğitim74
  => Delphi Eğitim75
  => Delphi Eğitim76
  => Delphi Eğitim77
  => Delphi Eğitim78
  => Delphi Eğitim79
  => Delphi Eğitim80
  => Delphi Eğitim81
  => Delphi Eğitim82
  => Delphi Eğitim83
  => Delphi Eğitim84
  => Delphi Eğitim85
  => Delphi Eğitim86
  => Delphi Eğitim87
  => Delphi Eğitim88
  => Delphi Eğitim89
  => Delphi Eğitim90
  => Delphi Eğitim91
  => Delphi Eğitim92
  => Delphi Eğitim93
  => Delphi Eğitim94
  => Delphi Eğitim95
  => Delphi Eğitim96
  => Delphi Eğitim97
  => Delphi Eğitim98
  => Delphi Eğitim99
  => Delphi Eğitim100
  => Delphi Eğitim101
  => Delphi Eğitim102
  => Delphi Eğitim103
  => Delphi Eğitim104
  => Delphi Eğitim105
  => Delphi Eğitim106
  => Delphi Eğitim107
  => Delphi Eğitim108
  => Delphi Eğitim109
  => Delphi Eğitim110
  => Delphi Eğitim111
  => Delphi Eğitim112
  => Delphi Eğitim113
  => Delphi Eğitim114
  => Delphi Eğitim115
  => Delphi Eğitim116
  => Delphi Eğitim117
  => Delphi Eğitim118
  => Delphi Eğitim119
  => Delphi Eğitim120
  => Delphi Eğitim121
  => Delphi Eğitim122
  => Delphi Eğitim123
  => Delphi Eğitim124
  => Delphi Eğitim125
  => Delphi Eğitim126
  => Delphi Eğitim127
  => Delphi Eğitim128
  => Delphi Eğitim129
  => Delphi Eğitim130
  => Delphi Eğitim131
  => Delphi Eğitim132
  => Delphi Eğitim133
  => Delphi Eğitim134
  => Delphi Eğitim135
  => Delphi Eğitim136
  => Delphi Eğitim137
  => Delphi Eğitim138
  => Delphi Eğitim139
  => Delphi Eğitim140
  => Delphi Eğitim141
  => Delphi Eğitim142
  => Delphi Eğitim143
  => Delphi Eğitim144
  => Delphi Eğitim145
  => Delphi Eğitim146
  => Delphi eğitim147
  => Delphi Eğitim148
  => Delphi Eğitim149
  => Delphi Eğitim150
  => Delphi Eğitim151
  => Delphi Eğitim152
  => Delphi Eğitim153
  => Delphi Eğitim154
  => Delphi Eğitim155
  => Delphi Eğitim156
  => Delphi Eğitim157
  => Delphi Eğitim158
  => Delphi Eğitim159
  => Delphi Eğitim160
  => Delphi Eğitim161
  => Delphi Eğitim162
  => Delphi Eğitim164
  => Delphi Eğitim165
  => Delphi Eğitim166
  => Delphi Eğitim167
  => Delphi Eğitim168
  => Delphi Eğitim169
  => Delphi Eğitim170
  => Delphi Eğitim171
  => Delphi Eğitim172
  => Delphi Eğitim173
  => Delphi Eğitim174
  => Delphi Eğitim175
  => Delphi Eğitim176
  => Delphi Eğitim177
  => Delphi Eğitim178
  => Delphi Eğitim179
  => Delphi Eğitim180
  => Delphi Eğitim181
  => Delphi Eğitim182
  => Delphi Eğitim183
  => Delphi Eğitim184
  => Delphi Eğitim185
  => Delphi Eğitim186
  => Delphi Eğitim187
  => Delphi Eğitim188
  => Delphi Eğitim189
  => Delphi Eğitim190
  => Delphi Eğitim191
  => Delphi Eğitim192
  => Delphi Eğitim193
  => Delphi Eğitim194
  => Delphi Eğitim195
  => Delphi Eğitim196
  => Delphi Eğitim197
  => Delphi Eğitim198
  => Delphi Eğitim199
  => Delphi Eğitim200
  => Delphi Eğitim201
  => Delphi Eğitim202
  => Delphi Eğitim203
  => Delphi Eğitim204
  => Delphi Eğitim205
  => Delphi Eğitim206
  => Delphi Eğitim207
  => Delphi Eğitim208
  => Delphi Eğitim209
  => Delphi Eğitim210
  => Delphi Eğitim211
  => Delphi Eğitim212
  => Delphi Eğitim213
  => Delphi Eğitim214
  => Delphi Eğitim215
  => Delphi Eğitim216
  => Delphi Eğitim217
  => Delphi Eğitim218
  => Delphi Eğitim219
  => Delphi Eğitim220
  => Delphi Eğitim221
  => Delphi Eğitim222
  => Delphi Eğitim223
  => Delphi Eğitim224
  => Delphi Eğitim225
  => Delphi Eğitim226
  => Delphi Eğitim227
  => Delphi Eğitim228
  => Delphi Eğitim229
  => Delphi Eğitim230
  => Delphi Eğitim231
  => Delphi Eğitim232
  => Delphi Eğitim233
  => Delphi Eğitim234
  => Delphi Eğitim235
  => Delphi Eğitim236
  => Delphi Eğitim237
  => Delphi Eğitim238
  => Delphi Eğitim239
  => Delphi Eğitim240
  => Delphi Eğitim241
  => Delphi Eğitim242
  İletişim

neoturk: ...Get the path to program files ?...

uses

  Registry;

 

function GetProgramFilesDir: string;

var

  reg: TRegistry;

begin

  reg := TRegistry.Create;

  try

    reg.RootKey := HKEY_LOCAL_MACHINE;

    reg.OpenKey('SOFTWAREMicrosoftWindowsCurrentVersion', False);

    Result := reg.ReadString('ProgramFilesDir');

  finally

    reg.Free;

  end;

end;

 

 

procedure TForm1.Button1Click(Sender: TObject);

begin

  // Shows something like c:Program files

  // zeigt "c:Programme" (oder ähnlich)

  ShowMessage(GetProgramFilesDir);

end;

 

Delphi - .....................................

 

neoturk: ...Retrieve unc paths ?...

ExpandUNCFileName returns the full path of the FileName

with the network drive portion in UNC format.

The pathname in the UNC-Format has the format:

Servernamesharename

 

ExpandUNCFileName gibt einen String mit dem vollständigen

Pfadnamen der in FileName übergebenen Datei zurück.

Ein vollständig qualifizierter Pfadname besteht aus der

Laufwerkskomponente des Dateinamens im UNC-Format:

Servernamesharename

 

// Example, Beispiel:

 

Label1.Caption := ExpandUNCFileName('K:sharename.tmp'));

 

{where "K" is a Network Drive.}

 

 

{*****************************************************}

{2. Way }

 

function GetUNCName(const LocalPath: string): string;

var

  BufferSize: DWord;

  DummyBuffer: Byte;

  Buffer: Pointer;

  Error: DWord;

begin

  BufferSize := 1;

  WNetGetUniversalName(PChar(LocalPath), UNIVERSAL_NAME_INFO_LEVEL, @DummyBuffer, BufferSize);

  Buffer := AllocMem(BufferSize);

  try

    Error := WNetGetUniversalName(PChar(LocalPath), UNIVERSAL_NAME_INFO_LEVEL, Buffer, BufferSize);

    if Error <> NO_ERROR then

      begin

        SetLastError(Error);

        RaiseLastWin32Error;

      end;

    Result := PUniversalNameInfo(Buffer)^.lpUniversalName

  finally

    FreeMem(Buffer);

  end;

end;

 

procedure TForm1.Button1Click(Sender: TObject);

begin

 Label1.Caption := GetUNCName('y:xyz')

end;

 

Delphi - .....................................

 

neoturk: ...Retrieve unc paths ?...

ExpandUNCFileName returns the full path of the FileName

with the network drive portion in UNC format.

The pathname in the UNC-Format has the format:

Servernamesharename

 

ExpandUNCFileName gibt einen String mit dem vollständigen

Pfadnamen der in FileName übergebenen Datei zurück.

Ein vollständig qualifizierter Pfadname besteht aus der

Laufwerkskomponente des Dateinamens im UNC-Format:

Servernamesharename

 

// Example, Beispiel:

 

Label1.Caption := ExpandUNCFileName('K:sharename.tmp'));

 

{where "K" is a Network Drive.}

 

 

{*****************************************************}

{2. Way }

 

function GetUNCName(const LocalPath: string): string;

var

  BufferSize: DWord;

  DummyBuffer: Byte;

  Buffer: Pointer;

  Error: DWord;

begin

  BufferSize := 1;

  WNetGetUniversalName(PChar(LocalPath), UNIVERSAL_NAME_INFO_LEVEL, @DummyBuffer, BufferSize);

  Buffer := AllocMem(BufferSize);

  try

    Error := WNetGetUniversalName(PChar(LocalPath), UNIVERSAL_NAME_INFO_LEVEL, Buffer, BufferSize);

    if Error <> NO_ERROR then

      begin

        SetLastError(Error);

        RaiseLastWin32Error;

      end;

    Result := PUniversalNameInfo(Buffer)^.lpUniversalName

  finally

    FreeMem(Buffer);

  end;

end;

 

procedure TForm1.Button1Click(Sender: TObject);

begin

 Label1.Caption := GetUNCName('y:xyz')

end;

 

Delphi - .....................................

 

neoturk: ...Replace a running dll ?...

function SystemErrorMessage: string;

var

  P: PChar;

begin

  if FormatMessage(Format_Message_Allocate_Buffer + Format_Message_From_System,

                   nil,

                   GetLastError,

                   0,

                   @P,

                   0,

                   nil) <> 0 then

  begin

    Result := P;

    LocalFree(Integer(P))

  end

  else

    Result := '';

end;

 

 

// Path to Original File

 

procedure TForm1.Button2Click(Sender: TObject);

begin

  if Opendialog1.Execute then

    edit1.Text := OpenDialog1.FileName;

end;

 

// Path to New File

 

procedure TForm1.Button3Click(Sender: TObject);

begin

  if Opendialog2.Execute then

    edit2.Text := OpenDialog2.FileName;

end;

 

// Replace the File.

 

procedure TForm1.Button1Click(Sender: TObject);

begin

  if (Movefileex(PChar(Edit1.Text), PChar(Edit2.Text), MOVEFILE_DELAY_UNTIL_REBOOT) = False) then

    ShowMessage(SystemErrorMessage)

  else

  begin

    ShowMessage('Please Restart Windows to have these changes take effect');

    halt;

  end;

end;

 

Delphi - .....................................

 

neoturk: ...Replace a running dll ?...

function SystemErrorMessage: string;

var

  P: PChar;

begin

  if FormatMessage(Format_Message_Allocate_Buffer + Format_Message_From_System,

                   nil,

                   GetLastError,

                   0,

                   @P,

                   0,

                   nil) <> 0 then

  begin

    Result := P;

    LocalFree(Integer(P))

  end

  else

    Result := '';

end;

 

 

// Path to Original File

 

procedure TForm1.Button2Click(Sender: TObject);

begin

  if Opendialog1.Execute then

    edit1.Text := OpenDialog1.FileName;

end;

 

// Path to New File

 

procedure TForm1.Button3Click(Sender: TObject);

begin

  if Opendialog2.Execute then

    edit2.Text := OpenDialog2.FileName;

end;

 

// Replace the File.

 

procedure TForm1.Button1Click(Sender: TObject);

begin

  if (Movefileex(PChar(Edit1.Text), PChar(Edit2.Text), MOVEFILE_DELAY_UNTIL_REBOOT) = False) then

    ShowMessage(SystemErrorMessage)

  else

  begin

    ShowMessage('Please Restart Windows to have these changes take effect');

    halt;

  end;

end;

 

Delphi - .....................................

 

neoturk: ...Rename, remove, delete, move a file-directory ?...

Directories

 

Create a Directory :

* CreateDir('c:path');

* Tip 102 (MkDir Example)

Remove a Directory : RemoveDir('c:path') or RmDir('c:path')

Change a Directory : ChDir('c:path')

Current Directory : GetCurrentDir

Check if a Directory exists : if DirectoryExists('c:path') then ...

Rename a Directory: Tip 1024 (SHFileOperation)

Copy/Move/Delete whole directories: Tip 152 (ShFileOperation)

 

Files

 

Rename a File : RenameFile('file1.txt', 'file2.xyz')

Delete a File : DeleteFile('c:text.txt')

Move a File : MoveFile('C:file1.txt','D:file1.txt');

Copy a File :

* CopyFile(Pchar(File1),PChar(File2),bFailIfExists)

* Tip 101 (Example)

* Tip 28 (SHFileOperation)

Change a File's Extension : ChangeFileExt('test.txt', 'xls')

Check if a File exists : if FileExists('c:filename.tst') then ...

 

Delphi - .....................................

 

neoturk: ...Rename, remove, delete, move a file-directory ?...

Directories

 

Create a Directory :

* CreateDir('c:path');

* Tip 102 (MkDir Example)

Remove a Directory : RemoveDir('c:path') or RmDir('c:path')

Change a Directory : ChDir('c:path')

Current Directory : GetCurrentDir

Check if a Directory exists : if DirectoryExists('c:path') then ...

Rename a Directory: Tip 1024 (SHFileOperation)

Copy/Move/Delete whole directories: Tip 152 (ShFileOperation)

 

Files

 

Rename a File : RenameFile('file1.txt', 'file2.xyz')

Delete a File : DeleteFile('c:text.txt')

Move a File : MoveFile('C:file1.txt','D:file1.txt');

Copy a File :

* CopyFile(Pchar(File1),PChar(File2),bFailIfExists)

* Tip 101 (Example)

* Tip 28 (SHFileOperation)

Change a File's Extension : ChangeFileExt('test.txt', 'xls')

Check if a File exists : if FileExists('c:filename.tst') then ...

 

Delphi - .....................................

 

neoturk: ...Get the owner of a file ?...

// When you create a file or directory, you become the owner of it.

// With GetFileOwner you get the owner of a file.

 

function GetFileOwner(FileName: string;

  var Domain, Username: string): Boolean;

var

  SecDescr: PSecurityDescriptor;

  SizeNeeded, SizeNeeded2: DWORD;

  OwnerSID: PSID;

  OwnerDefault: BOOL;

  OwnerName, DomainName: PChar;

  OwnerType: SID_NAME_USE;

begin

  GetFileOwner := False;

  GetMem(SecDescr, 1024);

  GetMem(OwnerSID, SizeOf(PSID));

  GetMem(OwnerName, 1024);

  GetMem(DomainName, 1024);

  try

    if not GetFileSecurity(PChar(FileName),

      OWNER_SECURITY_INFORMATION,

      SecDescr, 1024, SizeNeeded) then

      Exit;

    if not GetSecurityDescriptorOwner(SecDescr,

      OwnerSID, OwnerDefault) then

      Exit;

    SizeNeeded  := 1024;

    SizeNeeded2 := 1024;

    if not LookupAccountSID(nil, OwnerSID, OwnerName,

      SizeNeeded, DomainName, SizeNeeded2, OwnerType) then

      Exit;

    Domain   := DomainName;

    Username := OwnerName;

  finally

    FreeMem(SecDescr);

    FreeMem(OwnerName);

    FreeMem(DomainName);

  end;

  GetFileOwner := True;

end;

 

procedure TForm1.Button1Click(Sender: TObject);

var

  Domain, Username: string;

begin

  GetFileOwner('YourFile.xyz', domain, username);

  ShowMessage(username + '@' + domain);

end;

 

// Note: Only works unter NT.

 

Delphi - .....................................

 

neoturk: ...Get the owner of a file ?...

// When you create a file or directory, you become the owner of it.

// With GetFileOwner you get the owner of a file.

 

function GetFileOwner(FileName: string;

  var Domain, Username: string): Boolean;

var

  SecDescr: PSecurityDescriptor;

  SizeNeeded, SizeNeeded2: DWORD;

  OwnerSID: PSID;

  OwnerDefault: BOOL;

  OwnerName, DomainName: PChar;

  OwnerType: SID_NAME_USE;

begin

  GetFileOwner := False;

  GetMem(SecDescr, 1024);

  GetMem(OwnerSID, SizeOf(PSID));

  GetMem(OwnerName, 1024);

  GetMem(DomainName, 1024);

  try

    if not GetFileSecurity(PChar(FileName),

      OWNER_SECURITY_INFORMATION,

      SecDescr, 1024, SizeNeeded) then

      Exit;

    if not GetSecurityDescriptorOwner(SecDescr,

      OwnerSID, OwnerDefault) then

      Exit;

    SizeNeeded  := 1024;

    SizeNeeded2 := 1024;

    if not LookupAccountSID(nil, OwnerSID, OwnerName,

      SizeNeeded, DomainName, SizeNeeded2, OwnerType) then

      Exit;

    Domain   := DomainName;

    Username := OwnerName;

  finally

    FreeMem(SecDescr);

    FreeMem(OwnerName);

    FreeMem(DomainName);

  end;

  GetFileOwner := True;

end;

 

procedure TForm1.Button1Click(Sender: TObject);

var

  Domain, Username: string;

begin

  GetFileOwner('YourFile.xyz', domain, username);

  ShowMessage(username + '@' + domain);

end;

 

// Note: Only works unter NT.

 

Delphi - .....................................

 

neoturk: ...Show directories in a ttreeview ?...

procedure TForm1.GetDirectories(Tree: TTreeView; Directory: string; Item: TTreeNode; IncludeFiles: Boolean);

var

  SearchRec: TSearchRec;

  ItemTemp: TTreeNode;

begin

  Tree.Items.BeginUpdate;

  if Directory[Length(Directory)] <> '' then Directory := Directory + '';

  if FindFirst(Directory + '*.*', faDirectory, SearchRec) = 0 then

  begin

    repeat

      if (SearchRec.Attr and faDirectory = faDirectory) and (SearchRec.Name[1] <> '.') then

      begin

        if (SearchRec.Attr and faDirectory > 0) then

          Item := Tree.Items.AddChild(Item, SearchRec.Name);

        ItemTemp := Item.Parent;

        GetDirectories(Tree, Directory + SearchRec.Name, Item, IncludeFiles);

        Item := ItemTemp;

      end

      else if IncludeFiles then

        if SearchRec.Name[1] <> '.' then

          Tree.Items.AddChild(Item, SearchRec.Name);

    until FindNext(SearchRec) <> 0;

    FindClose(SearchRec);

  end;

  Tree.Items.EndUpdate;

end;

 

procedure TForm1.Button1Click(Sender: TObject);

var

  Node: TTreeNode;

  Path: string;

  Dir: string;

begin

  Dir := 'c:temp';

  Screen.Cursor := crHourGlass;

  TreeView1.Items.BeginUpdate;

  try

    TreeView1.Items.Clear;

    GetDirectories(TreeView1, Dir, nil, True);

  finally

    Screen.Cursor := crDefault;

    TreeView1.Items.EndUpdate;

  end;

end;

 

Delphi - .....................................

 

neoturk: ...Show directories in a ttreeview ?...

procedure TForm1.GetDirectories(Tree: TTreeView; Directory: string; Item: TTreeNode; IncludeFiles: Boolean);

var

  SearchRec: TSearchRec;

  ItemTemp: TTreeNode;

begin

  Tree.Items.BeginUpdate;

  if Directory[Length(Directory)] <> '' then Directory := Directory + '';

  if FindFirst(Directory + '*.*', faDirectory, SearchRec) = 0 then

  begin

    repeat

      if (SearchRec.Attr and faDirectory = faDirectory) and (SearchRec.Name[1] <> '.') then

      begin

        if (SearchRec.Attr and faDirectory > 0) then

          Item := Tree.Items.AddChild(Item, SearchRec.Name);

        ItemTemp := Item.Parent;

        GetDirectories(Tree, Directory + SearchRec.Name, Item, IncludeFiles);

        Item := ItemTemp;

      end

      else if IncludeFiles then

        if SearchRec.Name[1] <> '.' then

          Tree.Items.AddChild(Item, SearchRec.Name);

    until FindNext(SearchRec) <> 0;

    FindClose(SearchRec);

  end;

  Tree.Items.EndUpdate;

end;

 

procedure TForm1.Button1Click(Sender: TObject);

var

  Node: TTreeNode;

  Path: string;

  Dir: string;

begin

  Dir := 'c:temp';

  Screen.Cursor := crHourGlass;

  TreeView1.Items.BeginUpdate;

  try

    TreeView1.Items.Clear;

    GetDirectories(TreeView1, Dir, nil, True);

  finally

    Screen.Cursor := crDefault;

    TreeView1.Items.EndUpdate;

  end;

end;

 

Delphi - .....................................

 

neoturk: ...Run a program automatically at windows start-up ?...

uses

  Registry;

 

procedure SetAutoStart(AppName, AppTitle: string; bRegister: Boolean);

const

  RegKey = 'SoftwareMicrosoftWindowsCurrentVersionRun';

  // or: RegKey = 'SoftwareMicrosoftWindowsCurrentVersionRunOnce';

var

  Registry: TRegistry;

begin

  Registry := TRegistry.Create;

  try

    Registry.RootKey := HKEY_LOCAL_MACHINE;

    if Registry.OpenKey(RegKey, False) then

    begin

      if bRegister = False then

        Registry.DeleteValue(AppTitle)

      else

        Registry.WriteString(AppTitle, AppName);

    end;

  finally

    Registry.Free;

  end;

end;

 

// Example:

 

procedure TForm1.Button1Click(Sender: TObject);

begin

  // 1.Parameter: Path to your Exe-File

  // 2. Parameter: the Title of your Application

  // 3. Set (true) or Unset (false) Autorun

  SetAutoStart(ParamStr(0), 'Title of your Application', True);

end;

 

Delphi - .....................................

 

neoturk: ...Run a program automatically at windows start-up ?...

uses

  Registry;

 

procedure SetAutoStart(AppName, AppTitle: string; bRegister: Boolean);

const

  RegKey = 'SoftwareMicrosoftWindowsCurrentVersionRun';

  // or: RegKey = 'SoftwareMicrosoftWindowsCurrentVersionRunOnce';

var

  Registry: TRegistry;

begin

  Registry := TRegistry.Create;

  try

    Registry.RootKey := HKEY_LOCAL_MACHINE;

    if Registry.OpenKey(RegKey, False) then

    begin

      if bRegister = False then

        Registry.DeleteValue(AppTitle)

      else

        Registry.WriteString(AppTitle, AppName);

    end;

  finally

    Registry.Free;

  end;

end;

 

// Example:

 

procedure TForm1.Button1Click(Sender: TObject);

begin

  // 1.Parameter: Path to your Exe-File

  // 2. Parameter: the Title of your Application

  // 3. Set (true) or Unset (false) Autorun

  SetAutoStart(ParamStr(0), 'Title of your Application', True);

end;

 

Delphi - .....................................

 

neoturk: ...Use gettempfilename to create a unique temporary file ?...

function GetTempFile(const Extension: string): string;

var

  Buffer: array[0..MAX_PATH] of Char;

  aFile: string;

begin

  repeat

    GetTempPath(SizeOf(Buffer) - 1, Buffer);

    GetTempFileName(Buffer, '~', 0, Buffer);

    Result := ChangeFileExt(Buffer, Extension);

  until not FileExists(Result);

end;

 

procedure TForm1.Button1Click(Sender: TObject);

begin

  ShowMessage(GetTempFile('.~tp'));

  // The temp. file looks like C:WINDOWSTEMP~61D5.TMP

end;

 

{

  Note:

  The GetTempFile function just returns a unique filename but

  doesn't create the file.

}

 

{

  Bemerkung:

  Die GetTempFile Funktion liefert nur den Namen der temp.

  Datei aber erstellt sie nicht.

}

 

Delphi - .....................................

 

neoturk: ...Use gettempfilename to create a unique temporary file ?...

function GetTempFile(const Extension: string): string;

var

  Buffer: array[0..MAX_PATH] of Char;

  aFile: string;

begin

  repeat

    GetTempPath(SizeOf(Buffer) - 1, Buffer);

    GetTempFileName(Buffer, '~', 0, Buffer);

    Result := ChangeFileExt(Buffer, Extension);

  until not FileExists(Result);

end;

 

procedure TForm1.Button1Click(Sender: TObject);

begin

  ShowMessage(GetTempFile('.~tp'));

  // The temp. file looks like C:WINDOWSTEMP~61D5.TMP

end;

 

{

  Note:

  The GetTempFile function just returns a unique filename but

  doesn't create the file.

}

 

{

  Bemerkung:

  Die GetTempFile Funktion liefert nur den Namen der temp.

  Datei aber erstellt sie nicht.

}

 

Delphi - .....................................

 

neoturk: ...Change file attributes ?...

{

 To set a file's attributes, pass the name of the file and

 the attributes you want to the FileSetAttr function.

}

 

{

 FileSetAttr setzt die Attribute der mit FileName

 angegebenen Datei auf den Wert Attr.

}

 

{

  To hide a file:

  Eine Datei verstecken:

}

 

procedure TForm1.Button1Click(Sender: TObject);

begin

  FileSetAttr('C:YourFile.ext', faHidden);

end;

 

{

  Other Files Attributes:

  Andere Dateiattribute:

}

 

{

  faReadOnly  $00000001 Schreibgeschützte Datei

  faHidden    $00000002 Verborgene Datei

  faSysFile   $00000004 Systemdatei

  faVolumeID  $00000008 Laufwerks-ID

  faDirectory $00000010 Verzeichnis

  faArchive   $00000020 Archivdatei

  faAnyFile   $0000003F Beliebige Datei

}

 

 

{

  You can also set some attributes at once:

  Es können auch mehrere Attribute aufs Mal gesetzt werden:

}

 

FileSetAttr('C:Autoexec.bat', faReadOnly + faHidden);

 

 

{

  To remove write protection on a file:

  Den Schreibschutz einer Datei aufheben:

}

 

if (FileGetAttr(FileName) and faReadOnly) > 0

 then FileSetAttr(FileName, FileGetAttr(FileName) xor faReadOnly);

 

{

  Re-Set write protection:

  Schreibschutz wieder setzen:

}

 

FileSetAttr(FileName, FileGetAttr(FileName) or faReadOnly);

 

Delphi - .....................................

 

neoturk: ...Change file attributes ?...

{

 To set a file's attributes, pass the name of the file and

 the attributes you want to the FileSetAttr function.

}

 

{

 FileSetAttr setzt die Attribute der mit FileName

 angegebenen Datei auf den Wert Attr.

}

 

{

  To hide a file:

  Eine Datei verstecken:

}

 

procedure TForm1.Button1Click(Sender: TObject);

begin

  FileSetAttr('C:YourFile.ext', faHidden);

end;

 

{

  Other Files Attributes:

  Andere Dateiattribute:

}

 

{

  faReadOnly  $00000001 Schreibgeschützte Datei

  faHidden    $00000002 Verborgene Datei

  faSysFile   $00000004 Systemdatei

  faVolumeID  $00000008 Laufwerks-ID

  faDirectory $00000010 Verzeichnis

  faArchive   $00000020 Archivdatei

  faAnyFile   $0000003F Beliebige Datei

}

 

 

{

  You can also set some attributes at once:

  Es können auch mehrere Attribute aufs Mal gesetzt werden:

}

 

FileSetAttr('C:Autoexec.bat', faReadOnly + faHidden);

 

 

{

  To remove write protection on a file:

  Den Schreibschutz einer Datei aufheben:

}

 

if (FileGetAttr(FileName) and faReadOnly) > 0

 then FileSetAttr(FileName, FileGetAttr(FileName) xor faReadOnly);

 

{

  Re-Set write protection:

  Schreibschutz wieder setzen:

}

 

FileSetAttr(FileName, FileGetAttr(FileName) or faReadOnly);

 

Bu web sitesi ücretsiz olarak Bedava-Sitem.com ile oluşturulmuştur. Siz de kendi web sitenizi kurmak ister misiniz?
Ücretsiz kaydol