een echte breinbreker.....
Ik ben in vb.net voor een onderdeel van een programma een onderdeel aan het maken dat het volume in windows aan kan passen, ik heb een aantal voorbeelden gevonden in VB6, en die werken gewoon wel.
Nu heb ik een poging gedaan om dat te porten naar VB.net.
Ik gebruik een aantal API-calls uit de winmm.dll, en op het punt waar ik de goed mixer wil openen is het resultaat van die code MMSYSERR_INVALPARAM.
Hierbij de relevante code:
nu moet de hMixerHandle gevuld worden met een long die naar de mixer refereerd
wat raar is is dat dezelfde code het wel doen in VB6
er zitten nog een heel zooitje constante bij maar dui hebben niet veel te maken met het probleem
wat ik me dan ook noh afvroeg tijdens het zoeken naar een oplossing voor dit probleem of ik de enige was die dit ook geprobeerd heeft in vb.net, want er is geen enkel voorbeeld van te vinden, wel veel in VB6(of ik ben bezig op een hele verkeerde manier, kan natuurlijk ook nog)
Ik ben in vb.net voor een onderdeel van een programma een onderdeel aan het maken dat het volume in windows aan kan passen, ik heb een aantal voorbeelden gevonden in VB6, en die werken gewoon wel.
Nu heb ik een poging gedaan om dat te porten naar VB.net.
Ik gebruik een aantal API-calls uit de winmm.dll, en op het punt waar ik de goed mixer wil openen is het resultaat van die code MMSYSERR_INVALPARAM.
Hierbij de relevante code:
Visual Basic .NET:
1
2
| Private Declare Function mixerOpen Lib "winmm.dll" (ByVal phmx As Long, ByVal uMxId As Long, ByVal dwCallback As Long, ByVal dwInstance As Long, ByVal fdwOpen As Long) As Int64 |
Visual Basic .NET:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| Public Function OpenMixer(ByVal MixerNumber As Long) As Long Dim ret As Long ' is there a mixer available? If MixerNumber < 0 Or MixerNumber > mixerGetNumDevs - 1 Then Exit Function ' open the mixer ret = mixerOpen(hMixerHandle, MixerNumber , 0, 0, 0) If ret <> MMSYSERR_NOERROR Then MsgBox(ret & "<>" & MMSYSERR_NOERROR) Exit Function Else MsgBox("geen error") End If End Function |
nu moet de hMixerHandle gevuld worden met een long die naar de mixer refereerd
wat raar is is dat dezelfde code het wel doen in VB6
er zitten nog een heel zooitje constante bij maar dui hebben niet veel te maken met het probleem
wat ik me dan ook noh afvroeg tijdens het zoeken naar een oplossing voor dit probleem of ik de enige was die dit ook geprobeerd heeft in vb.net, want er is geen enkel voorbeeld van te vinden, wel veel in VB6(of ik ben bezig op een hele verkeerde manier, kan natuurlijk ook nog)