Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi String in einer DLL ändern funktioniert ohne Error geht ned (https://www.delphipraxis.net/14169-string-einer-dll-aendern-funktioniert-ohne-error-geht-ned.html)

sCrAPt 3. Jan 2004 19:01


String in einer DLL ändern funktioniert ohne Error geht ned
 
HiH :o

Ich habe eine DLL in der folgendes steht:
Delphi-Quellcode:
function CharReplace(Text: String; Von: Integer; Zu:String): String; export;
var
  s: string;
begin
  s := Text;
  s[Von] := Zu[1];
  Result := s;
end;

exports
  charreplace index 3;
und mit einem anderen Programm rufe ich diese noch so schöne function auf:
Delphi-Quellcode:
function CharReplace(Text: String; Von: Integer; Zu:String): String; external 'strings.dll' index 3;

procedure TForm1.Button1Click(Sender: TObject);
begin
  showmessage(charreplace('Hallo',2,'f'));
end;
Ausführen tut er es dann auch aber dann kommt gleich ein Error
Zitat:

Zitat von Projekt1
Ungültige Zeigeroperation

Aber wenn ich CharReplace in Projekt1 hinzufüge kommt dieser Error nicht. Woran liegt das? Wie kann ich diesen Error entfernen?

:angle:, sCrAPt

mirage228 3. Jan 2004 19:21

Re: String in einer DLL ändern funktioniert ohne Error geht
 
Wenn du in DLLs mit Strings arbeiten möchtest, musst du in der DLL als erstes die unit ShareMem (vor allen anderen) einbinden.
Zusätzlichh brauchst du dann die borlandmm.dll oder delphimm.dll oder je nach dem...

mfG
mirage228

ustra 3. Jan 2004 19:23

Re: String in einer DLL ändern funktioniert ohne Error geht
 
Hi,

lese den Kommentar in Delphi, nach dem Du über Datei| Neu eine neues DLL Projekt erzeugt hast und lese Dir das durch : DDL und Strings und Du weißt, wo der Fehler liegt´und was dagegen hilft.

Beste Grüße
Ulrich

sCrAPt 3. Jan 2004 19:37

Re: String in einer DLL ändern funktioniert ohne Error geht
 
Ich hab den Kommentar selbstverständlich gleich nachdem ich ihn gesehen hab gelöscht :D
Werd ich glaub mal ausprobieren.

:angle:, sCrAPt

sCrAPt 4. Jan 2004 01:04

Re: String in einer DLL ändern funktioniert ohne Error geht
 
HiHo :o

Hab ich jetzt gemacht, wenn ich aber das Programm beende kommt folgender Error:
Zitat:

Zitat von Error
Runtime error 217 at 00413E14

:angle:, sCrAPt

kiar 4. Jan 2004 13:48

Re: String in einer DLL ändern funktioniert ohne Error geht
 
hast du auch die unit sharemem in der aufrufenden anwendung an erster stelle der uses eingefügt?

sCrAPt 4. Jan 2004 20:00

Re: String in einer DLL ändern funktioniert ohne Error geht
 
Ja.
Auch bei der DLL (?)

:angle:, sCrAPt

sakura 4. Jan 2004 20:02

Re: String in einer DLL ändern funktioniert ohne Error geht
 
Bei beiden als erstes in die Projekt-Uses-Klausel.

...:cat:...

sCrAPt 4. Jan 2004 21:11

Re: String in einer DLL ändern funktioniert ohne Error geht
 
bei beiden an aller erster stelle

:angle:, sCrAPt


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:56 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz