Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#7

Re: Neustrukturierung einer DLL

  Alt 5. Jul 2007, 14:38
Hi Robert erstmal Danke für das auseinandernehmen der API

Zitat:
// (rom) warum nicht THandle?
HVIS = DWORD;
Weil unter Bass HVIS auch als DWORD deklariert ist!
Und der Wert nichts mit einem THandle zu tun hat.

Result := DWORD(Vismod[moduleNum]);
Zitat:
// (rom) aussagekraeftige Parameternamen verwenden
Was verstehst du darunter?
visConfig sagt mir das hier die konfiguration (Pfad zur Konfig) der Vis übergeben werden soll
weiss nun nicht was da nicht aussagekräftig ist ?

Zitat:
// (rom) Boolean ist fast sicher falsch. Boolean ist ein 1-Byte-Typ. Vermutlich ist BOOL gemeint.
Reicht für TRUE,FALSE nicht 1-Byte -Typ? mehr ist das doch nicht
Brauche werde LongBool noch WordBool

Zitat:
ByteBool / Boolean = 1 Byte true oder false boolescher Wert
WordBool = 2 Byte true oder false boolescher Wert
LongBool = 4 Byte true oder false boolescher Wert
Zitat:
// (rom) Der korrekte Typ fuer ein Fenster-Handle ist HWND.
theoretisch
In VB ist es long der name sagt da nichts aus
Übergebe ich nur HWND weiss VB nicht ob es ein integer, long oder sonstiger wert ist.
Bei VB sieht das so aus.

HWND as Long
Wenn ich also nur HWND aus Delphi übergebe kennt VB den Wert nicht!
Bei DWORD gibt es kein Problem damit.

Zitat:
// (rom) HWND oder HVIS (vermutlich HVIS).
procedure BASS_WINAMPVIS_Play(handle: DWORD); stdcall; external 'bass_vis.dll';
handle ist die allgemeine Variable für HVIS unter Bass da weiss jeder was damit gemeint ist.
Deshalb auch hier nicht HVIS (könnte man aber ändern)

Zitat:
// (rom) warum wird kein BOOL zurueckgeliefert?
function BASS_WINAMPVIS_IsPlaying(handle: DWORD):integer; stdcall; external 'bass_vis.dll';
Deshalb nicht weil es hier um Integer werte und nicht um bool geht.
1 = Play, 0 = stop, 3 = pause

gruss Emil
  Mit Zitat antworten Zitat