unit Unit10;
interface
uses
sysutils;
type
{$ALIGN 4}
TDocumentData =
record
DocumentID: Int64;
// Kann man den benutzen oder ist man da auf Integer beschränkt? Wäre sehr schlecht.
DocumentName: PChar;
// Normalerweise String (der wäre theoretisch auf 255 Zeichen begrenzt, könnte aber auch erweitert werden)
DocumentDescription: PChar;
// Hier steht eine Beschreibung die evtl. sogar RichText beinhalten soll
Deleted: Boolean;
// Der sollte ja keine Probleme machen, oder?
end;
function getDocumentData(
const aId : Int64;
var aDocument : TDocumentData): LongBool;
procedure freeDocumentData(
var aDocument : TDocumentData);
implementation
function getDocumentData(
const aId : Int64;
var aDocument : TDocumentData): LongBool;
begin
result := false;
// Pick up the Data
if True
then
begin
fillchar(aDocument, sizeof(aDocument), 0);
aDocument.DocumentID := aId;
// reserve memory
aDocument.DocumentName := Strnew('
Documentname');
aDocument.DocumentDescription := StrNew('
DocumentDescription');
result := true;
end;
end;
procedure freeDocumentData(
var aDocument : TDocumentData);
begin
if aDocument.DocumentName <>
nil then StrDispose(aDocument.DocumentName);
if aDocument.DocumentDescription <>
nil then StrDispose(aDocument.DocumentDescription);
fillchar(aDocument, sizeof(aDocument), 0);
end;
end.