AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Enum verursacht eine ungültige gleitkommaoperation in Kernel32
Thema durchsuchen
Ansicht
Themen-Optionen

Enum verursacht eine ungültige gleitkommaoperation in Kernel32

Ein Thema von EWeiss · begonnen am 11. Jul 2016 · letzter Beitrag vom 12. Jul 2016
 
EWeiss
(Gast)

n/a Beiträge
 
#1

Enum verursacht eine ungültige gleitkommaoperation in Kernel32

  Alt 11. Jul 2016, 17:12
Mein Enum

Delphi-Quellcode:
  TPlayState = (psError = -1, psStop = 0, psPlay = 1,
                   psIsPlaying = 2, psPause= 3,
                   psPrevTitle = 4, psNextTitle = 5,
                   psSetPlaylistTitle = 6, psGetPlaylistTitlePos = 7,
                   psSetPlaylistPos = 8, psGetSelectedTitlePos = 9,
                   psPlaylistClear = 10, psAddPlaylistTitle = 11);
erweitere ich nun das Enum um einen Eintrag verursacht dieser Eintrag eine ungültige gleitkommaoperation unter VB6.

Die Callback sieht so aus.

Delphi-Quellcode:
TBASSVIS_STATECALLBACK = procedure(NewState: TPlayState); stdcall;
var
  AmpStateCallback : TBASSVIS_STATECALLBACK;
Der neue Entrag..
psExternalClose = 12

wird dann so übergeben
Delphi-Quellcode:
      if (assigned(AmpStateCallback)) then
        AmpStateCallback(psExternalClose );
funktioniert alles unter Delphi aber nicht mit VB6.

Das Problem ist das ich den DatenTyp (integer) mit den Enum nicht übergeben kann der typ der dann in VB6 ankommt "könnte" also variant sein.
Wenn also Variant verwendet wird löscht die Callback an ihrem Ende zu viel vom Stack.
Würde ich jetzt zumindest mal vermuten.

Wie könnte ich die Callback umbauen so das ich von dem Enum wegkomme?

gruss

Geändert von EWeiss (11. Jul 2016 um 17:15 Uhr)
  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 02:44 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-2025 by Thomas Breitkreuz