AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

C++ Headerdatei in Pascal

Ein Thema von NickelM · begonnen am 13. Feb 2011 · letzter Beitrag vom 17. Feb 2011
 
NickelM

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

C++ Headerdatei in Pascal

  Alt 13. Feb 2011, 03:57
Delphi-Version: 2009
Hallo ihr,

Ich bin gerade dabei das TS3 Plugin SDK von C++ in Pascal zuübersetzen. Soweit sogut.
Nur am übersetzen eines structs, der Funktionen enthält, funkt irgendwas net.

Eine Funktion als Beispiel, die ich verwenden wollte:
Code:
//Auszug von einen anderen Datei für Definition
//des anyid types (hab ich weggelassen da ich net weis ich das übersetzen soll)
#if defined(WIN32) || defined(__WIN32__) || defined(_WIN32)
   typedef unsigned __int16 anyID;
   typedef unsigned __int64 uint64;
   #ifdef BUILDING_DLL
      #define EXPORTDLL __declspec(dllexport)
   #else
      #define EXPORTDLL
   #endif
#else
   #include <stdint.h>
   typedef uint16_t anyID;
   typedef uint64_t uint64;
   #ifdef BUILDING_DLL
      #define EXPORTDLL __attribute__ ((visibility("default")))
   #else
      #define EXPORTDLL
   #endif
#endif

//Aus der "Problemdatei"
#ifdef __cplusplus
extern "C" {
#endif
struct TS3Functions {
unsigned int (*requestSendPrivateTextMsg)(uint64 serverConnectionHandlerID, const char* message, anyID targetClientID, const char* returnCode);
}
Ich hab das jetzt bisher so übersetzt:
Delphi-Quellcode:
type
anyID = Word;

TrequestSendPrivateTextMsg = function (serverConnectionHandlerID : uint64; const message : PAnsiChar; targetClientID : anyID; const returnCode : PAnsiChar) : Cardinal; //Muss PAnsiChar sein, da es keine Unicode zeichen sind

TTS3Functions = record
requestSendPrivateTextMsg : TrequestSendPrivateTextMsg;
end;
Hat es was mit den Teilen zutun die ich rausgelassen habe? das mit dem extern "c" weis ich hat was mit exportieren der Funktionen zutun.
Wenn ich aber an die Funktion ein cdecl; dranhäng, ändert sich nichts.

Ich muss zugeben mit den Grundlagen und Typumwundlung gehts ja noch, aber bei solchen Compiler "Anweisungen" bin ich überfragt...
Nickel
"Lebe und denke nicht an morgen"
Zitat aus dem gleichnamigen Bollywoodfilm.
  Mit Zitat antworten Zitat
 

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 03:18 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz