Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Dword -> word ? (https://www.delphipraxis.net/192077-dword-word.html)

Schucki 18. Mär 2017 10:52

AW: Dword -> word ?
 
Zitat:

Zitat von Amateurprofi (Beitrag 1364637)
Wenn Volume den Wert $19999999 hätte, dann wäre das dezimal 429496729 (nicht 4294967295)
Anders herum, wenn Volume den Wert dezimal 4294967295 hätte dann wäre das $FFFFFFFF.
Da (bei mir) im Debugger die dezimalen Werte angezeigt werden, vermute ich, dass Volume den Wert 4294967295 = $FFFFFFFF hat und du beim Umrechnen die am Ende stehende 5 vergessen hast.

Der Debugger schmeißt 4294967295 heraus. Jetzt ist mir aber auch aufgefallen das ich FALSCH in HEXA hab umrechnen lassen. Und zwar wurde der Wert dort als SIGNED betrachtet. was Quatsch ist.

4294967295 = $FFFFFFFF
damit stimmt die Umwandlung von DWORD zu WORD wohl, das Problem ist das die Funktion

WaveOutGetVolume(uDeviceId, @Volume) = MMSYSERR_NOERROR;

Meint es wäre alles richtig in Volume übertragen aber das stimmt anscheinend nicht denn die Lautstärken sind alle auf 50%. Warum ich den Umweg über ein Array gehen soll wenn es dafür Funktionen gibt bleibt mir ein Rätsel.

Grüße Frank

Schucki 18. Mär 2017 11:00

AW: Dword -> word ?
 
---

Luckie 18. Mär 2017 11:15

AW: Dword -> word ?
 
Also ist das eigentliche Problem jetzt gelöst? Für das andere Problem mach bitte einen neuen Thread auf.

p80286 18. Mär 2017 15:51

AW: Dword -> word ?
 
Zitat:

Zitat von Schucki (Beitrag 1364638)
Warum ich den Umweg über ein Array gehen soll wenn es dafür Funktionen gibt bleibt mir ein Rätsel.

Weil das, was Mavarik und ich Dir vorgeschlagen haben, eine andere Sichtweise auf das selbe Datum ist. Da ist kein weiterer Code für nötig. Bei mehreren tausend Aufrufen macht sich das schon bemerkbar. Aber das ist bei Dir ja nicht der Fall.

Gruß
K-H

Schucki 18. Mär 2017 23:29

AW: Dword -> word ?
 
Zitat:

Zitat von p80286 (Beitrag 1364655)
Weil das, was Mavarik und ich Dir vorgeschlagen haben, eine andere Sichtweise auf das selbe Datum ist. Da ist kein weiterer Code für nötig. Bei mehreren tausend Aufrufen macht sich das schon bemerkbar. Aber das ist bei Dir ja nicht der Fall.

OK an Tausende Aufrufe habe ich in dem Fall echt nicht gedacht aber wenn es mal zum tragen kommt dann kann ich mich hoffentlich daran erinnern! :-D

Dann danke für die Erklärung!

Gruß Frank


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:05 Uhr.
Seite 2 von 2     12   

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