AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

string / PChar Problem in funktion / dll

Ein Thema von MaBuSE · begonnen am 9. Jul 2004 · letzter Beitrag vom 9. Aug 2004
 
Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.838 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

string / PChar Problem in funktion / dll

  Alt 9. Jul 2004, 13:36
Hallo,

ich habe folgende Definition einer Funktion in einer DLL:
Code:
BOOL __declspec(dllexport) GetUser    (LPSTR sDomain, LPSTR sUser, DWORD nLen);
in Delphi sieht das bei mir so aus:
Delphi-Quellcode:
function GetUser(sDomain: LPSTR; var sUser: LPSTR; var nLen: DWORD):BOOL; stdcall; overload;
...
exports
  GetUser(sDomain: LPSTR; var sUser: LPSTR; var nLen: DWORD) name 'GetUser';
Mein Problem ist die Übergabe eines Strings als LPSTR.

Delphi-Quellcode:
function myMagicFunc(const sDomain: string; var SUser: string):Boolean;
...

function GetUser(sDomain: LPSTR; var sUser: LPSTR; var nLen: DWORD):BOOL;
var
  sD,
  sU: string;
  cU: array of Char;
begin
  sD := sDomain;
  sU := sUser;
  Result := myMagicFunc(sD, sU);

  // string sU in array of char cU umwandeln
  setlength(cU, length(sU));
  StrLCopy(@cU[0],@sU[1],length(cU));

  sUser := PansiChar(cU);
  nLen := Length(cU);

  // Compiler-Hinweis Beseitigung ;-)
  if sUser = sDomain then ;
end;
Das will nicht so wie ich will !!!

Gibt beim Aufruf eine Schutzverletzung.

Weiß jemand Rat ?

[edit]Als offene Frage markiert[/edit]
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:29 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