Einzelnen Beitrag anzeigen

pszopp

Registriert seit: 7. Sep 2005
Ort: Alsdorf
95 Beiträge
 
Delphi 2010 Professional
 
#1

Viele PChars in einem Record

  Alt 10. Jan 2006, 10:40
Hallo Delphi-Fans,

ich habe ein Problem mit einem Record, in dem viele Variablen vom Typ PChar gespeichert werden sollen.
Der Record ist wie folgt aufgebaut:

Delphi-Quellcode:
  TUpdateInfo = RECORD
    ApplicationTitle : PChar;
    ApplicationName : PChar;
    ApplicationPath : PChar;
    ApplicationExeName : PChar;
    UpdatePath : PChar;
    SourceURL : PChar;
    CurrentVersion : TVersion;
    LangId : Integer;
  END;
In einem Testprogramm erzeugt die Methode GetInfo eine Instanz des Typs TUpdateInfo:
Delphi-Quellcode:
function TForm1.GetInfo:TUpdateInfo;
begin
  Result.ApplicationExeName := PChar(Application.ExeName);
  Result.ApplicationName := PChar('Update-Test');
  Result.ApplicationPath := PChar(ExtractFileDir(Application.ExeName));
  Result.ApplicationTitle := PChar(Application.Title);
  Result.CurrentVersion := CreateVersion(2, 5, 0);
  Result.LangId := langGer;
  Result.SourceURL := PChar('http://intranet.tng.ad/DB/UPDATE/Test/');
  Result.UpdatePath := PChar(GetTempPath);
end;
Wenn ich diese Methode debugge, steht in jedem Teil von Result der richtige Wert.
In der Variable, der dieses Result zugewiesen wird, stehen fehlerhafte Werte:
Delphi-Quellcode:
var Info : TUpdateInfo;
begin
  Screen.Cursor:=crHourGlass;

  Info := GetInfo;
In diesem Fall würde in Info etwas falsches stehen.
Mit scheint es, als ob es beim Zuweisen des Inhalts für Info irgendeinen Fehler gibt.
Falls sich jemand gut mit PChars auskennt und eine Lösung / einen Fehler findet,
wäre ich dankbar.
  Mit Zitat antworten Zitat