AGB  ·  Datenschutz  ·  Impressum  







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

String/Char-Pointer aus C# DLL korrekt auslesen

Ein Thema von Testsieger · begonnen am 2. Jan 2014 · letzter Beitrag vom 2. Jan 2014
Antwort Antwort
Seite 2 von 3     12 3      
Testsieger

Registriert seit: 23. Nov 2013
22 Beiträge
 
#11

AW: String/Char-Pointer aus C# DLL korrekt auslesen

  Alt 2. Jan 2014, 10:40
Ich bekomme offensichtlich die Pointeradresse zurück und kann sie auch weitergeben (siehe beide Funktionsaufrufe:
1. Aufruf einlesen von varname2, dann in der 2. Funktion Weitergabe der Pointeradresse an die DLL). Das funktioniert
einwandfrei. Aber das Auslesen der Pointeradresse klappt leider nicht.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.541 Beiträge
 
Delphi 11 Alexandria
 
#12

AW: String/Char-Pointer aus C# DLL korrekt auslesen

  Alt 2. Jan 2014, 10:52
Ich bin zwar kein Experte in C/C++/C#, aber rein syntaktisch sieht mir das eher nach C++ aus. In C# werden laut http://www.mycsharp.de/wbb2/thread.php?threadid=12251 auch dort Ausgabeparameter mit out deklariert. Zeig doch nochmal den gesamten Code, der die AV verursacht, vielleicht stimmt da etwas nicht.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen

Geändert von DeddyH ( 2. Jan 2014 um 13:06 Uhr) Grund: Grammatik
  Mit Zitat antworten Zitat
Testsieger

Registriert seit: 23. Nov 2013
22 Beiträge
 
#13

AW: String/Char-Pointer aus C# DLL korrekt auslesen

  Alt 2. Jan 2014, 10:59
Es wird C++ sein, da kenne ich mich auch nicht richtig aus.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.541 Beiträge
 
Delphi 11 Alexandria
 
#14

AW: String/Char-Pointer aus C# DLL korrekt auslesen

  Alt 2. Jan 2014, 11:09
Ein Versuch noch:
Delphi-Quellcode:
Function GetVarInfo(hFile, iVar:Integer; varname: PAnsiChar; var varinfo: integer): Integer;stdcall;
  external 'c:\test\io32.dllname 'GetVarInfo';

...

var
  hFile, iVar: integer;
  varname2: AnsiString;
  varinfo: integer;
begin
  SetLength(varname2, 1024);
  FillChar(varname2, Length(varname2), #0);
  fehler := GetVarInfo(hFile, iVar, PAnsiChar(varname2), varinfo);
  SetLength(varname2, StrLen(PAnsiChar(varname2)));
  ShowMessage(varname2);
end;
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Testsieger

Registriert seit: 23. Nov 2013
22 Beiträge
 
#15

AW: String/Char-Pointer aus C# DLL korrekt auslesen

  Alt 2. Jan 2014, 11:25
Ich hatte auch schon weiter experimentiert und das jetzt noch mal ohne "out" nachgebaut. Gab jetzt keine AV (war dann wohl vorhin doch noch ein anderer Fehler drin), aber habe trotzdem noch keinen Inhalt. Ich experimentiere jetzt mal ohne "out" weiter (sind ja 2 Funktionen mit "out").

Ich versuche es aber auch mit deinem erweiterten Ansatz.
  Mit Zitat antworten Zitat
Testsieger

Registriert seit: 23. Nov 2013
22 Beiträge
 
#16

AW: String/Char-Pointer aus C# DLL korrekt auslesen

  Alt 2. Jan 2014, 11:46
Ich habe jetzt "out" rausgenommen. und nach deiner Code auch die Variable null-terminiert, aber sie ist immer noch leer.
Allerdings gibt es auch keine AV mehr!
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.541 Beiträge
 
Delphi 11 Alexandria
 
#17

AW: String/Char-Pointer aus C# DLL korrekt auslesen

  Alt 2. Jan 2014, 11:51
Was steht denn in "fehler"?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Testsieger

Registriert seit: 23. Nov 2013
22 Beiträge
 
#18

AW: String/Char-Pointer aus C# DLL korrekt auslesen

  Alt 2. Jan 2014, 11:56
Yep, hatte ich nicht mehr berücksichtigt, da vorher immer die "0" kam. Steht jetzt ein Wert drin.
Den prüfe ich jetzt mal.

Danke erstmal.
  Mit Zitat antworten Zitat
Testsieger

Registriert seit: 23. Nov 2013
22 Beiträge
 
#19

AW: String/Char-Pointer aus C# DLL korrekt auslesen

  Alt 2. Jan 2014, 12:06
Das war's. Jetzt funzt es.

Herzlichen Dank für deine Unterstützung!!!
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.541 Beiträge
 
Delphi 11 Alexandria
 
#20

AW: String/Char-Pointer aus C# DLL korrekt auslesen

  Alt 2. Jan 2014, 12:16
Und woran lag es nun genau?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 19:21 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