![](styles/elise/misc/quote_24x24.png)
Zitat von
himitsu:
ich sagte doch, du mußt auch die Daten ändern und nicht nur den Typ
quasi:
Result := PAnsiChar(AnsiString(PluginInfo));
Delphi-Quellcode:
// Temp{ein AnsiString} := AnsiString(PluginInfo);
Temp{ein AnsiString} := PluginInfo; // dank Autokonvertierung von Delphi auch so möglich
Result := PAnsiChar(Temp);
nur muß das Temp außerhalb der Funktion defniert sein, damit sie nicht bei Funktionsende freigegeben wird.
Ahh ..
![Wink](images/smilies/icon_wink.gif)
Hab das nicht ganz verstanden.
So gehts jetzt!
Delphi-Quellcode:
function BASS_AIMP2VIS_GetName(
handle: HVIS): PAnsiChar;
stdcall;
var
PluginInfo: PWideChar;
begin
Result :=
nil;
if (
not A_ValidHandle(
handle))
then
begin
BassFuncs^.SetError(BASS_ERROR_HANDLE);
Exit;
end;
VisInfo := PAIMPVisInfo(
Handle);
PluginInfo := VisInfo^.VisPointer.PluginInfo;
BassFuncs^.SetError(BASS_OK);
Result := PAnsiChar(AnsiString(PluginInfo));
end;
Das Teufelszeug in Delphi mit der Konvertiererei. grmmm
gruss Emil