![]() |
AW: Records von Delphi in VB6 verwenden
Zitat:
Delphi-Quellcode:
t_TagsLibrary_GetAudioAttributes = function (Tags: HTags; AudioType: TAudioType; Attributes: Pointer): LongBool; {$IFDEF MSWINDOWS}stdcall{$ELSE}cdecl{$ENDIF};
Delphi-Quellcode:
Das TMPEGAudioAttributes hatten wir ja schon.
type
TAudioType = (atAutomatic, atFlac, atMPEG, atDSDDSF, atWAV, atAIFF, atMP4, atOpus, atVorbis, atWMA, atWAVPack, atMusePack);
Delphi-Quellcode:
gruss
type
TMPEGVersion = (tmpegvUnknown, tmpegv1, tmpegv2, tmpegv25); TMPEGLayer = (tmpeglUnknown, tmpegl1, tmpegl2, tmpegl3); TMPEGChannelMode = (tmpegcmUnknown, tmpegcmMono, tmpegcmDualChannel, tmpegcmJointStereo, tmpegcmStereo); TMPEGModeExtension = (tmpegmeUnknown, tmpegmeNone, tmpegmeIntensity, tmpegmeMS, tmpegmeIntensityMS); TMPEGEmphasis = (tmpegeUnknown, tmpegeNo, tmpege5015, tmpegeCCITJ17); |
AW: Records von Delphi in VB6 verwenden
Ich wette in VB hat ein Enum immer 4 Byte, in Delphi 1, 2 oder 4 Bytes
Hier mal der Link zur Doku. ![]() Ok, da es alles Enums sind, sage ich, das liegt zu 99,9999% an der Enum Größe |
AW: Records von Delphi in VB6 verwenden
Zitat:
Wüsste jetzt auf anhieb nicht wie ich das in VB casten soll. Das würde auch erklären warum der zweite Record ungepackt genau so groß wie in VB ist. (88 Bytes) Während der erste nur mit Packed Record funktioniert. Siehe Anlage. Hmm.. jetzt wird es schwierig. gruss |
AW: Records von Delphi in VB6 verwenden
Zitat:
|
AW: Records von Delphi in VB6 verwenden
Zitat:
Kleines Beispiel..? Damit ich dem Developer mitteilen kann wie er das machen soll. Aber Achtung die DLL unterstützt auch anderer Developer-Sprachen es muss auf jeden fall kompatibel bleiben. gruss |
AW: Records von Delphi in VB6 verwenden
Ich denke, er meint so:
Delphi-Quellcode:
Dann muss Delphi den Typ auf 4 Bytes erweitern.
type
TMPEGVersion = (tmpegvUnknown, tmpegv1, tmpegv2, tmpegv25, tmpegdummy = $FFFFFFFF); |
AW: Records von Delphi in VB6 verwenden
Zitat:
Wo bekomme ich jetzt die Infos her das ein VB6 Enum auch wirklich 4 Byte hat? Nicht das ich es euch nicht glaube, will mich aber trotzdem mal informieren (ge-googled hab ich schon) gruss |
AW: Records von Delphi in VB6 verwenden
Und was ist mit
Delphi-Quellcode:
oder
{$Z4}
Delphi-Quellcode:
wie der von mir gepostete Link zur Dokumentation zeigt? :roll:
{$MINENUMSIZE 4}
|
AW: Records von Delphi in VB6 verwenden
Zitat:
Kannst mir bitte erklären? Meinst den Schalter {$MINENUMSIZE 4} für Enums setzen? gruss |
AW: Records von Delphi in VB6 verwenden
Muss ich jetzt schon die Dokumentation vorlesen?
Muss wohl so sein ... Auszug aus der Delphi-Dokumentation (Link habe ich schon ein paar Beiträge vorher angegeben): Zitat:
Wort und Doppelwort sind durch die (wohl automatische) Übersetzung gelaufen und lauteten im Original Word (2 Byte) und Doubleword (4 Byte). Der letzte Satz aus dem Zitat ist so lange zu lesen, bis man ihn verstanden hat ... (VB ist kein C/C++ aber da von MS in den Dingen wohl ähnlich bis gleich) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:21 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