Hi Sir, danke für die schnelle Anwort.
Genau das ist glaube ich, mein Problem.
Ich deklariere also so was;
Delphi-Quellcode:
Libary MyDLL;
...
Procedure DLLWrapperDoSomething (aString : PChar);
Var
s : String;
Begin
s := String (aString);
DoSomeThing (s);
aString := PChar (s); // Hint/Warnung 'Zugewiesener Wert wird nicht verwendet' is ja auch logisch
End;
Reicht es, wenn man dem Aufrufer (also dem VB-Coder) sagt, das er seinen String gefälligst groß genug dimensionieren muss? Dann würde ich den PChar, wie Du sagtest, als Pointer auffassen, den veränderten String ('s') einfach da rein schreiben und die o.g. Deklaration verwenden (also ohne VAR).
Stimmt, machen die Window-
API-Routinen auch so...
Danke!