Autor |
Beitrag |
R4Y
      
Beiträge: 41
|
Verfasst: Mi 23.12.09 22:34
Hallo,
ich habe seid langer zeit mal wieder ein Problem.
Ich verusche grad ein SDK nach Delphi zu portieren.
Nun scheitere ich an einer Struct.
Quelltext 1: 2: 3: 4:
| struct TS3Functions { unsigned int (*getPlaybackDeviceList)(int modeID, char**** result); } |
nun weiß ich nicht, wie ich diese zeile nach Delphi umschreiben kann.
Wenn mir da jemand helfen könnte, wäre das super.
grüße
Maurice
Zuletzt bearbeitet von R4Y am So 27.12.09 13:41, insgesamt 1-mal bearbeitet
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Do 24.12.09 00:01
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
elundril
      
Beiträge: 3747
Erhaltene Danke: 123
Windows Vista, Ubuntu
Delphi 7 PE "Codename: Aurora", Eclipse Ganymede
|
Verfasst: Do 24.12.09 05:14
eine kleine frage dazu, was bringt sich ein 3-facher Pointer auf nen Character-String? (wenn ichs richtig interpretiert habe)
lg elundril
_________________ This Signature-Space is intentionally left blank.
Bei Beschwerden, bitte den Beschwerdebutton (gekennzeichnet mit PN) verwenden.
|
|
R4Y 
      
Beiträge: 41
|
Verfasst: Do 24.12.09 12:18
super danke das sieht doch hilfreich aus
aber wäre das nicht eigentlich
Quelltext 1:
| PlaybackDeviceListFunc:^TPlaybackDeviceListFunc; |
wegen dem pointer?
@elundril
so wie ich das sehe ist das ein 3D array auf eine StringList .. wozu auch immer ^^
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Do 24.12.09 13:34
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
R4Y 
      
Beiträge: 41
|
Verfasst: So 27.12.09 13:43
ich hab da nochmal ne frage ^^
wie übersetzt man einen enum ohne namen?
C#-Quelltext 1: 2: 3: 4: 5: 6: 7:
| enum { CODEC_SPEEX_NARROWBAND = 0, CODEC_SPEEX_WIDEBAND, CODEC_SPEEX_ULTRAWIDEBAND, CODEC_CELT_MONO, CODEC_DUMMY_MONO, }; |
enums mit namen sind ja kein problem
Delphi-Quelltext 1:
| type irgendwas = (a,b,c); |
nur was ist, wenn da kein name steht?
grüße
Maurice
|
|
finalizat0r
      
Beiträge: 24
Erhaltene Danke: 1
|
Verfasst: So 27.12.09 15:38
Dann musst du dem Enum bzw. dem Type einen Namen geben! Ich hätte das so gemacht:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8:
| type TS3CODECS = ( CODEC_SPEEX_NARROWBAND = 0, CODEC_SPEEX_WIDEBAND, CODEC_SPEEX_ULTRAWIDEBAND, CODEC_CELT_MONO, CODEC_DUMMY_MONO ); |
Ich hab schon unzählige Programm für TeamSpeak 2 Programmiert (Viewer, Admin Tools etc) außer fürs SDK. Wenn du willst kriegst du die (Mit Delphi 2006 Compiliert).
|
|
R4Y 
      
Beiträge: 41
|
Verfasst: So 27.12.09 21:11
ich übersetze mir ja das gesammte sdk nach Delphi ^^
nur ich kann dem enum ja nicht einfach einen namen geben.
was mich auch viel mehr interessiert, was macht ein enum ohne namen in c++?
|
|
elundril
      
Beiträge: 3747
Erhaltene Danke: 123
Windows Vista, Ubuntu
Delphi 7 PE "Codename: Aurora", Eclipse Ganymede
|
Verfasst: Mo 28.12.09 12:07
warum kannst du einem Enum keinen Namen geben? der Name dient doch afaik eh nur den Programmieren damit die das Ding irgendwie ansprechen können und is dem Programmcode dann eh schnuppe?
lg elundril
_________________ This Signature-Space is intentionally left blank.
Bei Beschwerden, bitte den Beschwerdebutton (gekennzeichnet mit PN) verwenden.
|
|
BenBE
      
Beiträge: 8721
Erhaltene Danke: 191
Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
|
Verfasst: Mo 28.12.09 12:13
Enums ohne Namen werden in C(++) oft als Ersatz für Konstanten eingesetzt.
Ansonsten halt wie oben beschrieben.
_________________ Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
|
|
R4Y 
      
Beiträge: 41
|
Verfasst: Mo 28.12.09 13:53
okay dann werde ich sie einfach als konstante deklarieren.
danke 
|
|
R4Y 
      
Beiträge: 41
|
Verfasst: Sa 02.01.10 04:02
ich habe jetzt das sdk komplett compilierfähig nach Delphi übersetzt.
allerdings schmiert jetzt TeamSpeak ab beim laden des plugins ^^
vllt kann hier jmd drüberschauen und mir sagen was ich beim portieren falsch gemacht habe.
grüße
Maurice
Einloggen, um Attachments anzusehen!
|
|
Astat
      
Beiträge: 75
Erhaltene Danke: 1
Windows 2000
D6, D7, D2007, Lazarus
|
Verfasst: Sa 02.01.10 07:08
R4Y hat folgendes geschrieben : |
allerdings schmiert jetzt TeamSpeak ab beim laden des plugins ^^
vllt kann hier jmd drüberschauen und mir sagen was ich beim portieren falsch gemacht habe.
|
Hallo R4Y, was sagt denn der Debuger und Windebug, wenn Du die DLL startest (Host Teamviewer)?
Wo in Welcher Unit und Zeile krachts denn?
Die Pointer auf Pointer auf Pointer auf PChar kommen mir sehr merkwürdig vor?
PPPChar = ^PPChar;
PPPPChar = ^PPPChar;
Habe allerdings SDK noch nicht gecheckt, möchte auf Deine Debugantwort warten? "g"
lg. Astat
|
|
R4Y 
      
Beiträge: 41
|
Verfasst: Sa 02.01.10 14:13
das ist ja das, was mich nervt.
teamspeak erstelllt keinen crashdump oder gibt debug infos aus.
es schließt sich einfach.
mit nem debugger kommt ich auch net ran :/
|
|
Astat
      
Beiträge: 75
Erhaltene Danke: 1
Windows 2000
D6, D7, D2007, Lazarus
|
Verfasst: Sa 02.01.10 17:45
R4Y hat folgendes geschrieben : | das ist ja das, was mich nervt.
teamspeak erstelllt keinen crashdump oder gibt debug infos aus.
es schließt sich einfach.
mit nem debugger kommt ich auch net ran :/ |
Hallo R4Y, habe Windebug von MS gemeint.
www.microsoft.com/wh...bugging/default.mspx
www.microsoft.com/wh...ng/installx86.mspx#a
Sollte zumindest das Modul und Ladezustand liefern.
lg. Astat
|
|
R4Y 
      
Beiträge: 41
|
Verfasst: Di 05.01.10 05:24
ich verstehe nicht ganz, wie ich die programme anwenden muss ^^
|
|