Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Fehler bei pchar zu string bzw. umgekehrt! (durch dll???) (https://www.delphipraxis.net/20483-fehler-bei-pchar-zu-string-bzw-umgekehrt-durch-dll.html)

Nicolai1234 18. Apr 2004 20:02


Fehler bei pchar zu string bzw. umgekehrt! (durch dll???)
 
Ich habe einen string(s) und einen pchar(p).
Ich wandle den pchar wie folgt um:
Delphi-Quellcode:
s := string(p);
Dabei entsteht ein Fehler; die letzten Zeichen des strings sind dann verändert bzw. nicht mehr da! Woran kann das liegen?

Vielleicht muss ich noch dazu sagen, dass der pchar aus einer dll kommt! Kann es beim umgekehrten zu Fehlern kommen; also wenn ich aus dem Ergebnis der dll einen string mache? oder kann es sein, dass die dll falsch übergibt?

API 18. Apr 2004 20:04

Re: Fehler bei string zu pchar bzw. umgekehrt!
 
Zitat:

Ich wandle den pchar wie folgt um:
Source:
s := string(p);
warum nicht
Delphi-Quellcode:
s := p;

Nicolai1234 18. Apr 2004 20:06

Re: Fehler bei string zu pchar bzw. umgekehrt!
 
Weil das dann inkompatible Typen sind!!

API 18. Apr 2004 20:07

Re: Fehler bei string zu pchar bzw. umgekehrt!
 
Zitat:

Weil das dann inkompatible Typen sind!!
bei d6 gehts.

...oder so?

Delphi-Quellcode:
var
 p: PChar;
 s: string;
begin
 p := 'abd123';
 s := StrPas(p);
end;

Luckie 18. Apr 2004 20:09

Re: Fehler bei string zu pchar bzw. umgekehrt!
 
Zitat:

Zitat von Nicolai1605
Weil das dann inkompatible Typen sind!!

Was zahlst du mir für einen Gegegenbeweis? :mrgreen:


Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  s: String;
  p: PChar;
begin
  p := 'Hello world';
  s := p;
  ShowMessage(s);
end;

Nicolai1234 18. Apr 2004 20:09

Re: Fehler bei string zu pchar bzw. umgekehrt!
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von API
...oder so?

Delphi-Quellcode:
var
 p: PChar;
 s: string;
begin
 p := 'abd123';
 s := StrPas(p);
end;

Das geht auch nicht! Ich habe Delphi 6 Enterprise



Anhang: Meine Fehlermeldung bei p := s (p->result ; s->ergebnis)

API 18. Apr 2004 20:18

Re: Fehler bei string zu pchar bzw. umgekehrt!
 
Zitat:

var
p: PChar;
s: string;
begin
p := 'abd123';
s := StrPas(p);
end;
Geht 100%! Poste mal deinen Code!

Nicolai1234 18. Apr 2004 20:24

Re: Fehler bei string zu pchar bzw. umgekehrt!
 
Es ahndelt sich bei mir um eine function:
Delphi-Quellcode:
function rueckgabe(herkunft:pchar):pchar;
var ergebnis:string;
..
begin
...
if ergebnis = 'keine' then result := 'keine' else result := strpas(ergebnis);
Nur
Code:
result := ergebnis
geht auch nicht!

Dagon 18. Apr 2004 20:26

Re: Fehler bei string zu pchar bzw. umgekehrt!
 
Das liegt wohl daran, dass deine Funktion ein Ergebnis vom Typ PChar erwartet, du aber eines vom Typ String zurück geben willst.

Nicolai1234 18. Apr 2004 20:29

Re: Fehler bei string zu pchar bzw. umgekehrt!
 
sorry, ist mein Fehler oben im qt eigentlich hatte ich ja auch: result := pchar(ergebnis);
Das geht ja auch. Nur das letzte Zeichen ist manchmal Falsch oder es kommt gar keins!!!!


Vielleicht muss ich noch dazu sagen, dass der pchar aus einer dll kommt! Kann es beim umgekehrten zu Fehlern kommen; also wenn ich aus dem Ergebnis der dll einen string mache? oder kann es sein, dass die dll falsch übergibt?


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:49 Uhr.
Seite 1 von 2  1 2      

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