منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
معرفة مستوى الصوت المعرف في الويندوز وتغييره - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : الأقسام التعليمية - المنتدى القديم (http://vb4arb.com/vb/forumdisplay.php?fid=90)
+--- قسم : مكتبة أكواد المنتدى (http://vb4arb.com/vb/forumdisplay.php?fid=111)
+---- قسم : مكتبة أكواد الفيجوال بيسك 6 (http://vb4arb.com/vb/forumdisplay.php?fid=116)
+---- الموضوع : معرفة مستوى الصوت المعرف في الويندوز وتغييره (/showthread.php?tid=5922)



معرفة مستوى الصوت المعرف في الويندوز وتغييره - RaggiTech - 17-10-12

كاتب الموضوع : AhmedEssawy

هذا الكود من المنتدى القديم .

وكما هي العادة في مثل هذه الأوامر توفر لنا API دوال ويندوز جاهزة لمثل هذه العمليات ، والمثال المرفق يوضح زرين أمر واحد لضبط مستوى الصوت ، والآخر للحصول على المستوى الحالي للصوت .

والآن إلى الكود :


كود :
Private Declare Function waveOutSetVolume Lib "Winmm" (ByVal wDeviceID As Integer, ByVal dwVolume As Long) As Integer
Private Declare Function waveOutGetVolume Lib "Winmm" (ByVal wDeviceID As Integer, dwVolume As Long) As Integer
Private Sub Command1_Click()
Dim a, i As Long
Dim tmp As String
a = waveOutGetVolume(0, i)
tmp = "&h" & Right(Hex$(i), 4)
Text1 = CLng(tmp)
End Sub


Private Sub Command2_Click()
Dim a, i As Long
Dim tmp, vol As String
vol = Text1
tmp = Right((Hex$(vol + 65536)), 4)
vol = CLng("&H" & tmp & tmp)
a = waveOutSetVolume(0, vol)
End Sub