Mitenkähän voisi tehdä äänenvoimakkuuden säätimen vb2008:lla? että esim. scrollbarilla pystyisi säätämään koko tietokoneen äänenvoimakkuutta..?
Moi mr-henri
jos alusta ompi XP niin imppaa täältä MixerLib.zip -> pura tiedosto MixerLib.dll C:\Windows\System32 -hakemistoon -> avaa Windows komentokehoteikkuna -> krjoita: cd \Windows\Sytem32 & paina Enter-näpykkää -> kirjoita: gacutil /i MixerLib.dll | ngen install MixerLib.dll
(asennuksen purku: ngen uninstall MixerLib.dll | gacutil /u MixerLib)
'Väännetty SharpDevelop 3.1 Betalla
Imports System
Imports System.Windows.Forms
Imports MixerLib 'GAC-välilehdeltä referenssi: MixerLib
Public Partial Class MainForm
   Dim mixer As New MixerLib.AudioMixer.Mixer(0)
   Public Sub New()
      InitializeComponent()
   End Sub
   Sub MainFormLoad(sender As Object, e As EventArgs)
      If mixer.Devices.Count = 0 Then
         MsgBox("mixerilaitetta ei ole asennettu")
         Me.Close
      End If
      Me.MaximizeBox = False
      Me.Text = "MASTERVOLUME"
      Me.CheckBox1.Text = "Vaimenna"
      TrackBar1.Orientation = 1
      TrackBar1.Maximum = 1000
      TrackBar1.Minimum = 0
      TrackBar1.LargeChange = 50
      TrackBar1.SmallChange = 5
      CheckBox1.Checked = _
      mixer.Lines.Item(0).Mute
      TrackBar1.Value = _
      mixer.Lines.Item(0).Volume / 65.535
   End Sub
   Sub TrackBar1Scroll(sender As Object, e As EventArgs)
         mixer.Lines.Item(0).Volume _
       = 65.535 * TrackBar1.Value
   End Sub
   Sub CheckBox1CheckedChanged(sender As Object, e As EventArgs)
      mixer.Lines.Item(0).Mute = CheckBox1.Checked
   End Sub
   Sub MainFormFormClosing(sender As Object, e As FormClosingEventArgs)
      Me.Dispose
   End Sub
   Sub MainFormFormClosed(sender As Object, e As FormClosedEventArgs)
      End
   End Sub
End ClassMoi taas mr-henri
jos alusta ompi Vista tai uudempi niin imppaa täältä MixerApi.zip -> pura tiedosto MixerApi.dll C:\Windows\System32 -hakemistoon -> avaa Windows komentokehoteikkuna -> krjoita: cd \Windows\Sytem32 & paina Enter-näpykkää -> kirjoita: gacutil /i MixerApi.dll | ngen install MixerApi.dll
(asennuksen purku: ngen uninstall MixerApi.dll | gacutil /u MixerApi)
'Väännetty SharpDevelop 3.1 Betalla
Imports System
Imports System.Windows.Forms
Imports MixerApi 'Tuo referenssi GAC-välilehdeltä
Public Partial Class MainForm: Inherits Form
   Private device As MMDevice
   Public Sub New()
      Me.InitializeComponent()
      Me.checkBox1.Text = "Vaimenna"
      Me.MaximizeBox = False
      Me.Text = "MASTERVOLUME"
      Me.trackBar1.Orientation = 1
      Me.trackBar1.Maximum  = 100
      Me.trackBar1.Minimum = 0
      Me.trackBar1.LargeChange = 20
      Me.trackBar1.SmallChange = 5
      Me.trackBar1.TickFrequency = 10
      Dim DevEnum As New MMDeviceEnumerator()
      device = DevEnum.GetDefaultAudioEndpoint( _
      EDataFlow.eRender, ERole.eMultimedia)
      trackBar1.Value = CInt((device.AudioEndpointVolume. _
      MasterVolumeLevelScalar * 100))
      Me.checkBox1.Checked = device.AudioEndpointVolume.Mute
      AddHandler device.AudioEndpointVolume.OnVolumeNotification, _
      New AudioEndpointVolumeNotificationDelegate( _
      AddressOf AudioEndpointVolume_OnVolumeNotification)
   End Sub
   Private Sub AudioEndpointVolume_OnVolumeNotification( _
   data As AudioVolumeNotificationData)
      If Me.InvokeRequired Then
         Dim Params As Object() = New Object(0) {}
         Params(0) = data
         Me.Invoke(New AudioEndpointVolumeNotificationDelegate( _
         AddressOf AudioEndpointVolume_OnVolumeNotification), _
         Params)
      Else
         trackBar1.Value = CInt((data.MasterVolume * 100))
      End If
   End Sub
   Private Sub trackBar1Scroll(sender As Object, e As EventArgs)
      device.AudioEndpointVolume.MasterVolumeLevelScalar _
      = (CSng(trackBar1.Value) / 100F)
   End Sub
   Sub CheckBox1CheckedChanged(sender As Object, e As EventArgs)
      device.AudioEndpointVolume.Mute = CheckBox1.Checked
   End Sub
   Sub MainFormFormClosing(sender As Object, e As FormClosingEventArgs)
      Me.Dispose
   End Sub
   Sub MainFormFormClosed(sender As Object, e As FormClosedEventArgs)
      End
   End Sub
End ClassJostakin syystä tämä ei toimi minulla. kun säädintä liikuttaa, ei tapahdu mitään, mutta kun säädän master volumea windowsin omalla säätimellä, niin tämän ohjelman säädin liikkuu sen mukana. Vaimennuskaan ei toimi. kokeilin visual basic express editionilla(2008) ja sharp developer 3.1:llä. Vista on käyttiksenä.
Moi taas mr-henri
Pura MixerApi.dll -asennus kuten edellisessä viestissäni on neuvottu ja jos rekisteröit MixerApi.tlb niin poista rekisteröinti ja poista tiedosto/t
Imppaa täältä MixerApi.dll uusi versio, asenna samaan malliin kuten edellinenkin, testaa ja anna palautetta...
Aihe on jo aika vanha, joten et voi enää vastata siihen.