كيفية كتم الصوت تلقائيًا عند فصل سماعات الرأس على نظام التشغيل Windows 10

يمكن أن يحتفظ Windows 10 بملفات تعريف صوتية منفصلة لأجهزة الصوت المختلفة. لكل جهاز صوت تقوم بتوصيله ، يمكنك تعيين مستوى صوت مختلف وعندما يتم توصيل الجهاز ، سيتم ضبط مستوى الصوت تلقائيًا. بالطبع ، لا أحد يحتفظ بجهاز صوتي مكتوم الصوت طوال الوقت. سيزيدون مستوى الصوت أو ينقصونه ولكن لا يقوم أحد بكتم صوت أي جهاز صوتي بشكل معتاد.

إذا كنت تستخدم زوجًا من سماعات الرأس مع سطح المكتب لديك ، وغالبًا ما تضطر إلى فصلها ، فيمكنك استخدام نص برمجي صغير من PowerShell يعمل على كتم الصوت تلقائيًا عند فصل سماعات الرأس.

هذا شيء تفعله الهواتف المحمولة ، على سبيل المثال ، عندما تقوم بفصل سماعات الرأس ، تتوقف الموسيقى تلقائيًا. المنطق وراء ذلك هو أنك إما أنهيت الاستماع إلى الموسيقى أو أنك قمت بإزالة سماعات الرأس بطريق الخطأ وتحتاج إلى طريقة سريعة لإيقاف تشغيلها. تمت كتابة السيناريو بشكل أساسي على نفس المبدأ بواسطة  Prateek Singh من GEEKEEFY .

كيفية كتم الصوت تلقائيًا عند فصل سماعات الرأس على نظام التشغيل Windows 10

تلقائيا كتم الصوت

افتح المفكرة والصق ما يلي ؛

[cmdletbinding ()] Param () # إضافة تعريفات للوصول إلى النوع الإضافي لواجهة برمجة التطبيقات الصوتية - TypeDefinition @ 'باستخدام System.Runtime.InteropServices ؛ [Guid ("5CDF2C82-841E-4546-9722-0CF74078229A") ، InterfaceType (ComInterfaceType.InterfaceIsIUnknown)] واجهة IAudioEndpointVolume {// f () ، g () ، ... هي فتحات أسلوب COM غير مستخدمة. حدد هذه الأشياء إذا كنت تهتم بـ () ؛ الباحث ز () ؛ int ح () ؛ int i () ؛ int SetMasterVolumeLevelScalar (عائم fLevel، System.Guid pguidEventContext) ؛ int j () ؛ int GetMasterVolumeLevelScalar (خارج عائم pfLevel) ؛ int ك () ؛ int l () ؛ int م () ؛ int n () ؛ int SetMute ([MarshalAs (UnmanagedType.Bool)] bool bMute، System.Guid pguidEventContext)؛ int GetMute (out bool pbMute) ؛ } [Guid ("D666063F-1587-4E43-81F1-B948E807363F") ، InterfaceType (ComInterfaceType.InterfaceIsIUnknown)] واجهة IMMDevice {int Activate (المرجع System.Guid id ، int clsCtx ، int activationParams ، خارج IAudioEndpointVolume aev) ؛ } [Guid ("A95664D2-9614-4F35-A746-DE8DB63617E6")، InterfaceType (ComInterfaceType.InterfaceIsIUnknown)] واجهة IMMDeviceEnumerator {int f ()؛ // Unused int GetDefaultAudioEndpoint (int dataFlow، int role، out IMMDevice endpoint) ؛ } [ComImport، Guid ("BCDE0395-E52F-467C-8E3D-C4579291692E")] فئة MMDeviceEnumeratorComObject {} فئة عامة Audio {static IAudioEndpointVolume Vol () {var enumerator = new MMDeviceEnumeratorComObject () IMMDevice dev = خالية ؛ Marshal.ThrowExceptionForHR (enumerator.GetDefaultAudioEndpoint (/ * eRender * / 0، / * eMultimedia * / 1، out dev)) ؛ IAudioEndpointVolume epv = خالية ؛ var epvid = typeof (IAudioEndpointVolume) .GUID ؛ Marshal.ThrowExceptionForHR (dev.Activate (المرجع epvid، / * CLSCTX_ALL * / 23، 0، out epv)) ؛ عودة epv ؛ } حجم تعويم ثابت عام {get {float v = -1؛ Marshal.ThrowExceptionForHR (Vol (). GetMasterVolumeLevelScalar (خارج v)) ؛ return v؛} تعيين {Marshal.ThrowExceptionForHR (Vol (). SetMasterVolumeLevelScalar (value، System.Guid.Empty))؛}} bool ثابت عام Mute {get {bool mute؛ Marshal.ThrowExceptionForHR (Vol (). GetMute (out mute)) ؛ عودة البكم } اضبط {Marshal.ThrowExceptionForHR (Vol (). SetMute (value، System.Guid.Empty)) ؛ }}} '@ -Verbose while ($ true) {#Clean جميع الأحداث في الجلسة الحالية منذ أن كانت في حلقة لا نهائية ، لتبدأ بداية جديدة عندما تبدأ الحلقة Get-Event | Remove-Event -ErrorAction SilentlyContinue #Registering the Event and Waiting the event to be Register-WmiEvent -Class Win32_DeviceChangeEvent Wait-Event -OutVariable Event | Out-Null $ EventType = $ Event.sourceargs. جديد | "فرز الكائن TIME_CREATED - تنازلي | `Select-Object EventType -ExpandProperty EventType -First 1 #Conditional logic to handle، when to Mute / unMute الجهاز باستخدام Audio API If ($ EventType -eq 3) {[Audio] :: Mute = $ true Write-Verbose" كتم الصوت [$ ((Get-Date) .tostring ())] "} elseif ($ EventType -eq 2-and [Audio] :: Mute -eq $ true) {[Audio] :: Mute = $ false Write-Verbose" غير مكتوم [$ ((Get-Date) .tostring ())] "}}

احفظه بملحق ملف PS1. تأكد من تحديد "كل الملفات" من القائمة المنسدلة لنوع الملف. امنح الملف اسمًا يخبرك في لمح البصر بما يفعله. احفظه في مكان ما من غير المحتمل أن تحذفه عن طريق الصدفة ولكن أيضًا حيث يمكنك العثور عليه بسهولة إذا احتجت إلى ذلك.

تشغيل البرنامج النصي

لا يمكن لـ PowerShell تشغيل برنامج نصي تلقائيًا. هناك مقياس أمني مدمج يمنعه من القيام بذلك ولكن هناك طريقة للتغلب عليه. لدينا مقال تفصيلي حول كيفية القيام بذلك. اتبع الإرشادات للتشغيل التلقائي لبرنامج PowerShell النصي الذي أنشأته للتو ، واستخدم مهمة مجدولة لبدء البرنامج النصي في كل مرة تقوم فيها بتشغيل جهاز الكمبيوتر الخاص بك.

بدلاً من ذلك ، يمكنك تشغيل البرنامج النصي يدويًا عند تشغيل نظامك. لقد كنت أستخدمه منذ أقل من 30 دقيقة ولا أعرف كيف كنت أعيش بدونه من قبل.

Leave a Comment

كيفية الخروج من الوضع الآمن في نظام التشغيل Windows 10

كيفية الخروج من الوضع الآمن في نظام التشغيل Windows 10

عالق في الوضع الآمن؟ إليك دليل شامل حول كيفية الخروج من الوضع الآمن في Windows 10 بخطوات سهلة وفعالة.

كيفية كتم صوت / إلغاء كتم صوت النظام باستخدام اختصار لوحة المفاتيح في نظام التشغيل Windows 10

كيفية كتم صوت / إلغاء كتم صوت النظام باستخدام اختصار لوحة المفاتيح في نظام التشغيل Windows 10

كيفية كتم صوت / إلغاء كتم صوت النظام باستخدام اختصار لوحة المفاتيح أو إيماءة لوحة اللمس على نظام التشغيل Windows 10

Windows 10 Map Network Drive

Windows 10 Map Network Drive

هل تبحث عن كيفية تعيين محرك الأقراص الشبكي على نظام التشغيل Windows 10؟ نقدم لك خطوات واضحة وسهلة للقيام بذلك واستكشاف كيفية الوصول إلى المجلدات مباشرةً.

إنشاء وتطبيق نهج المجموعة في Windows Server

إنشاء وتطبيق نهج المجموعة في Windows Server

هل تستخدم Windows Server؟ هل تريد معرفة كيفية إنشاء سياسات المجموعة وتطبيقها على نظامك؟ تعرف على كيفية استخدام Windows Group Policy.

كيفية الحصول على Minecraft Java Edition تنزيل مجاني (نسخة تجريبية)

كيفية الحصول على Minecraft Java Edition تنزيل مجاني (نسخة تجريبية)

اكتشف كيفية الحصول على نسخة تجريبية مجانية من Minecraft Java Edition واستمتع بعالم اللعبة الشهير. احصل على تجربتك الخاصة الآن!

رموز سطح مكتب Windows 10 مفقودة: إليك كيفية إصلاح عدم ظهور رموز سطح المكتب

رموز سطح مكتب Windows 10 مفقودة: إليك كيفية إصلاح عدم ظهور رموز سطح المكتب

تعرف على كيفية إصلاح مشكلة عدم ظهور رموز سطح المكتب في نظام Windows 10 بخطوات بسيطة وسهلة. تعلم كيفية استعادة الرموز وتخصيص مظهر سطح المكتب الخاص بك.

كيف تريد فتح هذا الملف على نظام التشغيل Windows 10 - كيفية تغيير التطبيق؟

كيف تريد فتح هذا الملف على نظام التشغيل Windows 10 - كيفية تغيير التطبيق؟

تعلم كيفية فتح الملفات على نظام التشغيل Windows 10 وكيفية تغيير التطبيق الافتراضي لفتح ملفات معينة. اتبع الخطوات السهلة للحصول على أفضل تجربة في استخدام جهاز الكمبيوتر الخاص بك.

كيفية فتح Windows Defender على Windows 10

كيفية فتح Windows Defender على Windows 10

Windows Defender هو برنامج مكافحة الفيروسات الذي يأتي مع Windows 10 لحماية جهازك من البرامج الضارة

Miracast (Windows 10) تنزيل + كيفية الإعداد بسرعة

Miracast (Windows 10) تنزيل + كيفية الإعداد بسرعة

واحدة من أكثر الميزات التي تم التقليل من شأنها على نظام التشغيل Windows 10 هي دعمه لـ Miracast. تمت إضافته في السنوات الأولى من نظام التشغيل ويسمح للمستخدمين

كيفية إعداد واستخدام أداة Windows 10 Quick Assist

كيفية إعداد واستخدام أداة Windows 10 Quick Assist

تعد المساعدة عن بُعد طريقة فعالة لحل مشكلات الكمبيوتر عند عدم توفر مساعدة فعلية، وذلك من خلال استخدام أداة Windows 10 Quick Assist.