Registriert seit: 4. Feb 2007
6 Beiträge
|
Re: Firebird UDF unter Lazarus
11. Nov 2009, 13:32
Das bedeutet das hier
Delphi-Quellcode:
function UpperChar(const p:PChar):PChar; cdecl;
{
DECLARE EXTERNAL FUNCTION UpperChar
CString(255)
RETURNS CString(255) FREE_IT
ENTRY_POINT 'UpperChar' MODULE_NAME 'MyUDF'
}
var s:string;
begin
s:=STRING(p);
s:=AnsiUpperCase(s);
Result := ib_util_malloc(Length(s)+1);
StrPCopy(Result, s);
end;
und das hier
Delphi-Quellcode:
function AddStr(const aChar1, aChar2, aChar3:PChar):Pchar;
cdecl;
{
DECLARE EXTERNAL FUNCTION AddStr
CString(50), CString(50), CString(1)
RETURNS CString(101) FREE_IT
ENTRY_POINT 'AddStr' MODULE_NAME 'MyUDF'
}
var s1, s2, s3,s4:String;
begin
s1:=STRING(aChar1);
s2:=STRING(aChar2);
s3:=STRING(aChar3);
s4:=s1+s3+s2;
Result := ib_util_malloc(Length(s4)+1);
StrPCopy(Result, s4);
end;
wäre eine gute Vorlage?
Geht das nicht auch anders, als mit ib_util_malloc ?
[edit=mkinzler]Code-Tags durch Delphi-Tags ersetzt Mfg, mkinzler[/edit]
|
|
Zitat
|