Apabila anda secara tidak sengaja mencabut fon kepala komputer anda semasa memainkan muzik atau menonton filem, bunyi akan bertukar kepada bermain melalui pembesar suara luaran komputer. Jika anda bekerja di persekitaran pejabat atau di tempat awam yang sesak, ia akan menjejaskan semua orang di sekeliling anda. Walau bagaimanapun, semuanya akan diselesaikan hanya dengan beberapa langkah persediaan. Artikel di bawah akan membimbing anda cara mematikan bunyi secara automatik apabila mengeluarkan fon kepala pada komputer anda.
Arahan untuk mematikan bunyi apabila mencabut fon kepala
Langkah 1:
Tekan gabungan Windows + R untuk membuka kotak dialog Run. Kemudian masukkan notepad kata kunci dan klik OK untuk membuka.

Langkah 2:
Kemudian tampal kod di bawah ke Notepad kemudian klik Fail dan pilih Simpan Sebagai...
[cmdletbinding()] Param() #Adding definitions for accessing the Audio API Add-Type -TypeDefinition @' using System.Runtime.InteropServices; [Guid("5CDF2C82-841E-4546-9722-0CF74078229A"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] interface IAudioEndpointVolume { // f(), g(), ... are unused COM method slots. Define these if you care 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(out bool pbMute); } [Guid("D666063F-1587-4E43-81F1-B948E807363F"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] interface IMMDevice { int Activate(ref System.Guid id, int clsCtx, int activationParams, out IAudioEndpointVolume aev); } [Guid("A95664D2-9614-4F35-A746-DE8DB63617E6"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] interface IMMDeviceEnumerator { int f(); // Unused int GetDefaultAudioEndpoint(int dataFlow, int role, out IMMDevice endpoint); } [ComImport, Guid("BCDE0395-E52F-467C-8E3D-C4579291692E")] class MMDeviceEnumeratorComObject { } public class Audio { static IAudioEndpointVolume Vol() { var enumerator = new MMDeviceEnumeratorComObject() as IMMDeviceEnumerator; IMMDevice dev = null; 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)); return epv; } public static float Volume { get {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)); return mute; } set { Marshal.ThrowExceptionForHR(Vol().SetMute(value, System.Guid.Empty)); } } } '@ -Verbose While($true) { #Clean all events in the current session since its in a infinite loop, to make a fresh start when loop begins Get-Event | Remove-Event -ErrorAction SilentlyContinue #Registering the Event and Waiting for event to be triggered Register-WmiEvent -Class Win32_DeviceChangeEvent Wait-Event -OutVariable Event |Out-Null $EventType = $Event.sourceargs.newevent | ` Sort-Object TIME_CREATED -Descending | ` Select-Object EventType -ExpandProperty EventType -First 1 #Conditional logic to handle, When to Mute/unMute the machine using Audio API If($EventType -eq 3) { [Audio]::Mute = $true Write-Verbose "Muted [$((Get-Date).tostring())]" } elseif($EventType -eq 2 -and [Audio]::Mute -eq $true) { [Audio]::Mute = $false Write-Verbose "UnMuted [$((Get-Date).tostring())]" } }
![Bagaimana untuk mematikan bunyi secara automatik apabila mengeluarkan fon kepala pada Windows Bagaimana untuk mematikan bunyi secara automatik apabila mengeluarkan fon kepala pada Windows]()
Langkah 3:
Dalam antara muka menyimpan fail, pilih Semua Fail dalam bahagian Simpan sebagai jenis . Kemudian masukkan nama fail dalam format .ps1 . Nama fail boleh pilihan tidak ditandatangani dan ditulis serta-merta tetapi mesti mempunyai format PS1. Akhir sekali klik Simpan untuk menyimpan.
Kita harus menyimpan fail pada desktop untuk kegunaan pantas apabila diperlukan.
![Bagaimana untuk mematikan bunyi secara automatik apabila mengeluarkan fon kepala pada Windows Bagaimana untuk mematikan bunyi secara automatik apabila mengeluarkan fon kepala pada Windows]()
Langkah 4:
Klik kanan pada fail yang baru dibuat dan pilih Jalankan dengan PowerShell untuk melancarkan fail. Fail ini akan berfungsi, meredam bunyi apabila kami mencabut fon kepala komputer sehingga kami mematikan komputer .
![Bagaimana untuk mematikan bunyi secara automatik apabila mengeluarkan fon kepala pada Windows Bagaimana untuk mematikan bunyi secara automatik apabila mengeluarkan fon kepala pada Windows]()
Jika anda mahu fail ini dijalankan secara automatik apabila anda menghidupkan komputer anda, anda boleh menggunakan Penjadual Tugas. Bagaimana untuk menjalankan fail secara automatik menggunakan Penjadual Tugas, pengguna boleh merujuk artikel di bawah.
Lihat lagi:
Semoga berjaya!