Thema: Delphi widestringreplace

Einzelnen Beitrag anzeigen

xaromz

Registriert seit: 18. Mär 2005
1.682 Beiträge
 
Delphi 2006 Enterprise
 
#9

Re: widestringreplace

  Alt 20. Jun 2006, 23:38
Hallo,

zuerst sollteset Du mal überall ShareMem entfernen. Erstens gehört das (wenn überhaupt) ganz an den Anfang der Projektdatei (.dpr), und zweitens nur, wenn Du Delphi-Strings zwischen einer Delphi-DLL und einem Delphi-Programm austauschen willst.

Ich habe mal ein Testprogramm angehängt, mit dem Du die DLL testen kannst (Start -> Parameter -> Host-Anwendung).
Dabei habe ich festgestellt, dass Du einen Pointer auf einen Speicherbereich übergibst, der am Ende von Replace schon wieder freigegeben wurde. Das kann nicht funktionieren.
Du musst also einen Buffer erstellen, dessen Pointer Du übergibst. Du solltest dann aber aufpassen, dass Du kein Speicherleck fabrizierst.

Ich häng' mal noch die abgeänderte DLL an.

Gruß
xaromz
Angehängte Dateien
Dateityp: zip dlls_178.zip (1,0 KB, 5x aufgerufen)
Dateityp: zip testprojekt_167.zip (1,3 KB, 3x aufgerufen)
  Mit Zitat antworten Zitat