Hallo,
ich stelle einige Routinen auf
OOP um. Unter anderem habe ich mir eine Klasse erstellt die mir einige Information über die Application liefert.
Delphi-Quellcode:
type
TAppInfos = Class(TObject)
private
function GetSpecialPath(nFolder: Integer): string;
function GetApplicationsName: String;
function GetAnwendungsPath: TFileName;
function GetEigeneDateien: TFileName;
function GetAppAnwendungsOrdner: TFileName;
public
property ApplicationsName : String Read GetApplicationsName;
property AnwendungsPath : TFileName Read GetAnwendungsPath;
property EigeneDateien : TFileName Read GetEigeneDateien;
property AppAnwendungsOrdner: TFileName Read GetAppAnwendungsOrdner;
End;
implementation
{ TAppInfos }
function TAppInfos.GetAnwendungsPath: TFileName;
begin
Result:= IncludeTrailingPathDelimiter(GetSpecialPath(CSIDL_APPDATA));
end;
function TAppInfos.GetAppAnwendungsOrdner: TFileName;
begin
Result:= AnwendungsPath+ApplicationsName;
end;
function TAppInfos.GetApplicationsName: String;
var
aPath: TFileName;
begin
Result:= ChangeFileExt(ExtractFileName(Application.ExeName),'');
end;
usw.
Verwendet wird die Klasse von mir zum Beispiel um eine INI-Datei im Anwendungsverzeichnis abzuspeichern.
Delphi-Quellcode:
procedure TfrmSPSDAPHauptMenue.FormCreate(Sender: TObject);
var
aIniDateiPath: TFileName;
aInitDateiName: TFileName;
aInfos: TAppInfos;
begin
// An dieser Stelle sollen einige Ordner erstellt werden im Anwendungs-
// Verzeichnis.
OrdnerAnlegenAnwendungsVerzeichnis;
// Als weiteres wird eine INI-Datei erstellt um das Form wie bei der letzten
// Speicherung wieder herzustellen.
aIniDateiPath:= IncludeTrailingPathDelimiter(aInfos.AppAnwendungsOrdner)+
IncludeTrailingPathDelimiter(aInfos.ApplicationsName+INIT);
aInitDateiName:= aIniDateiPath+Caption+'.INI';
IniLesenAnlegen (self,aInitDateiName);
end;
Beim Ausführen des Programms meckert der Compiler mit folgender Warnmeldung:
[Pascal Warnung] frmSPSDAPHauptmenue2009.pas(58): W1036 Variable 'aInfos' ist möglicherweise nicht initialisiert worden
Meine Frage ist, wie muss ich den Quell-Code anpassen, dass ich diese [Pascal Warnung] nicht mehr bekomme.
Bis bald Chemiker
wer gesund ist hat 1000 wünsche wer krank ist nur einen.