Einzelnen Beitrag anzeigen

Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#5

AW: Variablen über Formularen

  Alt 1. Mär 2012, 16:56
könnte so aussehen, um überall daruf zugreifen zu können, einfach in die uses mit aufnehmen...
Delphi-Quellcode:
unit ConstsAndGlobals;

interface

uses
  Classes, Dialogs, SysUtils, Windows, RegistryUtils, RegistryKeys, Forms, Inifiles, graphics;

Type
  EDocError = Class(Exception);
  TDokuType = (dtAnf, dtAngeb, dtAB, dtLief, dtRech, dtGS);

Const
  Meldungen: Array [1 .. 4] of String = ('Daten wurden bereits gedruckt und an die Buchhaltung ausgegeben'#13'Änderung trotzdem zulassen ?',
    'Daten wurden bereits an die Buchhaltung ausgegeben'#13'Änderung trotzdem zulassen ?',
    'Daten wurden bereits an die Buchhaltung ausgegeben'#13'Löschen trotzdem zulassen ?',
    'Bankdiskette für diesen Satz wurde bereits erstellt'#13'Löschen trotzdem zulassen ?');

  C_TailingArrayNeeedNE: Array [boolean] of String = ('', 'en');
  CRLF=#13#10;
  C_ROUNDING = 10;
  C_SETTINGS = 'Settings';

  c_admin = 1 shl 0;
  c_KillKund = 1 shl 1;
  c_KillLiefer = 1 shl 2;
  ......
  ......
  c_MissingRight = 'Keine ausreichenden Rechte vorhanden';
  C_HelpTables: Array [0 .. 16] of String = ('anrede', 'Kalkgrup', 'Artikelobergruppen', 'Branche', 'Briefanr', 'Einheit', 'Fill', 'Typ', 'Bank', 'Kasstext',
    'Buchkto', 'Lagerort', 'Mwst', 'PersGemKosten', 'ORTFZ', 'SP_Konditionen', 'Wargrup');
  C_Stst: Array [0 .. 3] of String = ('RG', 'ZE', 'KA', 'UW');

var
  G_APPLICATION_PATH: String;
  G_REPORTS_PATH: String;
  G_CommandTimeOut: Integer;
  G_InifileName: String;
  ......
  ......
  G_Parameters: TStringList;
implementation

Procedure GetIniValues;
var
  ini: TInifile;
begin
  try
    ini := TInifile.Create(G_InifileName);
    try
  ......
  ......
      G_CommandTimeOut := ini.ReadInteger(C_SETTINGS,'CommandTimeOut',10);
    finally
      ini.Free;
    end;
  except
  end;
end;

Procedure SetIniValues;
var
  ini: TInifile;
begin
  try
    ini := TInifile.Create(G_InifileName);
    try
  ......
  ......
      ini.WriteInteger(C_SETTINGS,'CommandTimeOut',G_CommandTimeOut);
   finally
      ini.Free;
    end;
  except
  end;
end;

initialization

G_Parameters := TStringList.Create;
G_APPLICATION_PATH := IncludeTrailingPathDelimiter(ExtractFilePath(ParamStr(0)));
G_REPORTS_PATH := G_APPLICATION_PATH + 'Reports';
G_InifileName := ChangeFileExt(Application.Exename, '.ini');
GetIniValues;
G_Parameters.Delimiter := ' ';
G_Parameters.DelimitedText := CmdLine;

finalization

G_Parameters.Free;
SetIniValues;

end.
http://www.delphipraxis.net/31181-gl...onstanten.html
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)

Geändert von Bummi ( 1. Mär 2012 um 16:58 Uhr)
  Mit Zitat antworten Zitat