Cara Membisukan Bunyi Secara Automatik Apabila Fon Kepala Dicabut Palam Pada Windows 10

Windows 10 boleh menyimpan profil audio yang berasingan untuk peranti audio yang berbeza. Untuk setiap peranti audio yang anda sambungkan, anda boleh menetapkan tahap kelantangan yang berbeza dan apabila peranti disambungkan, kelantangan akan melaraskan secara automatik. Sudah tentu, tiada siapa yang memastikan peranti audio diredam sepanjang masa. Mereka akan menambah atau mengurangkan kelantangan tetapi tiada siapa yang lazimnya membisukan peranti audio.

Jika anda menggunakan sepasang fon kepala dengan desktop anda, dan selalunya terpaksa memutuskan sambungannya, anda boleh menggunakan sedikit skrip PowerShell yang akan meredam bunyi secara automatik apabila anda mencabut fon kepala anda.

Ini adalah sesuatu yang dilakukan oleh telefon mudah alih iaitu, apabila anda mencabut fon kepala anda, muzik berhenti secara automatik. Logik di sebalik ini ialah anda telah selesai mendengar muzik atau anda telah mengeluarkan fon kepala anda secara tidak sengaja dan anda memerlukan cara cepat untuk mematikannya. Skrip itu pada asasnya ditulis berdasarkan prinsip yang sama oleh  Prateek Singh dari GEEKEEFY .

Cara Membisukan Bunyi Secara Automatik Apabila Fon Kepala Dicabut Palam Pada Windows 10

Redam Bunyi secara automatik

Buka Notepad dan tampal yang berikut;

[cmdletbinding()] Param() #Menambah definisi untuk mengakses Audio API Add-Type -TypeDefinition @' menggunakan System.Runtime.InteropServices; [Guid("5CDF2C82-841E-4546-9722-0CF74078229A"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] antara muka IAudioEndpointVolume { // f(), g(), ... ialah slot kaedah COM yang tidak digunakan. Tentukan ini jika anda mengambil berat int f(); int g(); int h(); int i(); int SetMasterVolumeLevelScalar(float fLevel, System.Guid pguidEventContext); int j(); int GetMasterVolumeLevelScalar(out float pfLevel); int k(); int l(); int m(); int n(); int SetMute([MarshalAs(UnmanagedType.Bool)] bool bMute, System.Guid pguidEventContext); int GetMute(keluar bool pbMute); } [Guid("D666063F-1587-4E43-81F1-B948E807363F"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] antara muka IMMDevice { int Activate(ref System.Guid id, int clsCtx, int activationParams, keluar IAudioEndpointVolume aev); } [Guid("A95664D2-9614-4F35-A746-DE8DB63617E6"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] antara muka IMMDeviceEnumerator { int f(); // Unused int GetDefaultAudioEndpoint(int dataFlow, int role, out IMMMevice endpoint); } [ComImport, Guid("BCDE0395-E52F-467C-8E3D-C4579291692E")] kelas MMDeviceEnumeratorComObject { } kelas awam Audio { statik IAudioEndpointVolume Vol() { var enumerator = MMDeviceEnumeratorEnumeratorComObject baharu; IMMDevice dev = batal; Marshal.ThrowExceptionForHR(enumerator.GetDefaultAudioEndpoint(/*eRender*/ 0, /*eMultimedia*/ 1, out dev)); IAudioEndpointVolume epv = null; var epvid = typeof(IAudioEndpointVolume).GUID; Marshal.ThrowExceptionForHR(dev.Activate(ref epvid, /*CLSCTX_ALL*/ 23, 0, out epv)); pulangan epv; } apungan statik awam Isipadu { dapatkan {float v = -1; Marshal.ThrowExceptionForHR(Vol().GetMasterVolumeLevelScalar(out v)); return v;} set {Marshal.ThrowExceptionForHR(Vol().SetMasterVolumeLevelScalar(value, System.Guid.Empty));} } public static bool Mute { get { bool mute; Marshal.ThrowExceptionForHR(Vol().GetMute(out mute)); kembali bisu; } set { Marshal.ThrowExceptionForHR(Vol().SetMute(value, System.Guid.Empty)); } } } '@ -Verbose While($true) { #Bersihkan semua acara dalam sesi semasa sejak ia dalam gelung tak terhingga, untuk membuat permulaan baharu apabila gelung bermula Dapatkan-Acara | Remove-Event -ErrorAction Secara SenyapTeruskan #Mendaftar Acara dan Menunggu acara dicetuskan Register-WmiEvent -Class Win32_DeviceChangeEvent Wait-Event -OutVariable Event |Out-Null $EventType = $Event.sourceargs. acara baharu | ` Isih-Objek TIME_CREATED -Menurun | ` Select-Object EventType -ExpandProperty EventType -Pertama 1 #Logik bersyarat untuk dikendalikan, Bila untuk Membisukan/Nyahredam mesin menggunakan Audio API If($EventType -eq 3) { [Audio]::Mute = $true Write-Verbose "Diredamkan [$((Get-Date).tostring())]" } elseif($EventType -eq 2 -dan [Audio]::Mute -eq $true) { [Audio]::Mute = $false Write-Verbose " Nyahredam [$((Get-Date).tostring())]" } }

Simpannya dengan sambungan fail PS1. Pastikan anda memilih 'Semua Fail' daripada menu lungsur jenis fail. Beri nama fail yang akan memberitahu anda sepintas lalu apa yang dilakukannya. Simpannya di tempat yang anda tidak mungkin memadamkannya secara tidak sengaja tetapi juga di mana anda boleh menemuinya dengan mudah jika perlu.

Menjalankan Skrip

PowerShell tidak boleh autorun skrip sahaja. Terdapat langkah keselamatan terbina dalam yang menghalangnya daripada berbuat demikian tetapi ada cara untuk mengatasinya. Kami mempunyai artikel terperinci tentang cara anda boleh melakukannya. Ikut arahan untuk menjalankan skrip PowerShell secara automatik yang baru anda buat dan gunakan tugas yang dijadualkan untuk memulakan skrip setiap kali anda but PC anda.

Sebagai alternatif, anda boleh menjalankan skrip secara manual apabila anda boot sistem anda. Saya telah menggunakannya kurang daripada 30 minit dan saya tidak tahu bagaimana saya hidup tanpanya sebelum ini.

Tinggalkan Komen

KB5074168 (binaan 28020.1495) untuk Windows 11 26H1 menambah baik kertas dinding dan membetulkan pepijat (Canary)

KB5074168 (binaan 28020.1495) untuk Windows 11 26H1 menambah baik kertas dinding dan membetulkan pepijat (Canary)

KB5074168 (binaan 28020.1495) untuk Windows 11 dilancarkan di Canary Channel dengan sokongan kertas dinding WebP, pembetulan pepijat dan isu yang diketahui.

Cara menjadualkan sandaran penuh automatik pada Windows 11, 10

Cara menjadualkan sandaran penuh automatik pada Windows 11, 10

Untuk menjadualkan sandaran penuh pada Windows 11, anda boleh menggunakan alat Sandaran dan Pulihkan daripada Panel Kawalan atau Prompt Perintah. Begini caranya.

Microsoft mengatakan 2026 akan memberi tumpuan kepada menyelesaikan masalah terbesar Windows 11

Microsoft mengatakan 2026 akan memberi tumpuan kepada menyelesaikan masalah terbesar Windows 11

Microsoft mengatakan ia akan menumpukan pada pembaikan Windows 11 pada tahun 2026 selepas setahun yang ditandai dengan kemas kini yang tidak teratur, masalah prestasi dan kekecewaan pengguna.

Kebocoran Aluminium OS baharu Google membayangkan pesaing langsung Windows 11

Kebocoran Aluminium OS baharu Google membayangkan pesaing langsung Windows 11

Kebocoran OS Aluminium Google mendedahkan antara muka desktop penuh Android, berbilang tugas, sambungan Chrome dan AI, pesaing Windows 11 yang berpotensi.

Cara menghidupkan But Selamat pada Windows 10

Cara menghidupkan But Selamat pada Windows 10

Untuk mendayakan But Selamat pada Windows 10, anda perlu menghidupkan ciri ini dalam tetapan UEFI, tetapi dalam BIOS, anda mesti menukar MBR kepada GPT, dan kemudian bertukar.

Cara menaik taraf Windows 10 (BIOS) kepada Windows 11 (UEFI) tanpa kehilangan data

Cara menaik taraf Windows 10 (BIOS) kepada Windows 11 (UEFI) tanpa kehilangan data

Untuk menaik taraf PC Windows 10 dengan partition MBR kepada Windows 11 GPT, anda perlu menukar partition tersebut, bertukar kepada UEFI, mendayakan TPM dan Secure Boot.

Windows 11 akhirnya mempunyai alternatif Pengurus Tugas yang betul – temui AppControl

Windows 11 akhirnya mempunyai alternatif Pengurus Tugas yang betul – temui AppControl

AppControl membawakan sejarah sistem 3 hari, penjejakan pelancaran aplikasi dan amaran kepada Windows 11. Adakah ia lebih baik daripada Pengurus Tugas? Berikut ialah pecahan penuh.

Cara melumpuhkan Mod AI dalam bar alamat dan tab baharu pada Chrome

Cara melumpuhkan Mod AI dalam bar alamat dan tab baharu pada Chrome

Untuk melumpuhkan Mod AI dalam bar alamat Chrome dan halaman tab baharu, anda perlu melumpuhkan empat tetapan utama daripada halaman Bendera. Begini caranya.

Muat turun kertas dinding ulang tahun ke-50 Microsoft Surface Laptop 7 untuk Windows 11

Muat turun kertas dinding ulang tahun ke-50 Microsoft Surface Laptop 7 untuk Windows 11

Muat turun kertas dinding ulang tahun ke-50 Microsoft untuk Surface Laptop 7 yang menampilkan ikon Windows 11 Bloom dengan warna gelap dan emas.

Cara memasang RustDesk untuk desktop jauh pada Windows 11

Cara memasang RustDesk untuk desktop jauh pada Windows 11

Pasang dan konfigurasikan RustDesk pada Windows 11 untuk akses desktop jauh peribadi, menggunakan pelayan awam atau sediakan sendiri untuk sambungan selamat.