AGB  ·  Datenschutz  ·  Impressum  







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

Delphi Var Parameter in C++

Ein Thema von NickelM · begonnen am 8. Jul 2011 · letzter Beitrag vom 11. Jul 2011
 
NickelM

Registriert seit: 22. Jul 2007
Ort: Carlsberg
445 Beiträge
 
Delphi 2009 Professional
 
#1

Delphi Var Parameter in C++

  Alt 8. Jul 2011, 13:56
Hallo zusammen,

Ich habe eine DLL geschrieben und wollte testen, ob man sie auch in C++ verwenden kann.
Dafür hab ich mir eine C++ IDE (CodeBlocks) geholt und mal versucht das umzusetzten.
Ich muss dazusagen, dass ich mich mit C++ nicht wirklich auskenne und jetzt an ein Problem gekommen bin.
Ich lade meine DLL dynamisch in C++. Die ersten 2 Funktionen konnte ich umsetzten nach langem Probieren.
Nun hab ich nichts zu meinem Problem in google gefunden. (zumindest wusste ich nicht wie ich richtig danach googlen soll..meine versuche sind fehlgeschlagen)

Nun meine Funktion wird so in der DLL in Delphi deklariert
Delphi-Quellcode:
function ReadPackedFileData(PackFileHandle : Integer; DataPos,DataSize : Integer; var Bytes : TBytes): Integer; stdcall;
//Falls jemand fragt : TBytes = array of Byte;
So der Knackpunkt ist das var TBytes (nebenbei was macht var in einer Funktion bei delphi?, ich wies das die funktion dadurch nur variablen annimmt bei delphi, aber was bedeutet das var eigentlich? Also auf der "Speicherbereichsebene" )

Versucht habe ich es so in einer Konsolenanwendung

Code:
typedef int (*TReadPackedFileData) (int ,int ,int, byte* &bytes);

int main()
{
HMODULE hIns;
TReadPackedFileData ReadPackedFileData;
byte* bytes;

hIns=LoadLibrary("E://DLLTestC/pack.dll");
if(hIns > 0)

ReadPackedFileData=(TReadPackedFileData)GetProcAddress(hIns,"ReadPackedFileData");
ReadPackedFileData(Test1->FileHandle,Test2->FileDataPos,Test2->FileSizeCompressed, bytes);
//Test1 und Test2 sind struct Pointer, die auch funken, die Daten hol ich mir mit den 2 anderen Funktionen. Was auch funkt.
}
Danke im vorraus
Gruß NickelM
Nickel
"Lebe und denke nicht an morgen"
Zitat aus dem gleichnamigen Bollywoodfilm.
  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 13:27 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