Windows 10 1709版以上
打开powershell的管理员模式
开启Windows Subsystem Linux功能
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
再从Windows store / microsoft store下载Windows Subsystem Linux系统
安装chocolatey scoop 接着使用powershell的管理员模式
Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
choco install pulseaudio notepad2
打开普通权限的powershell
iex (new-object net.webclient).downloadstring('https://get.scoop.sh')
scoop install git scoop bucket add extras scoop install vcxsrv archwsl
Arch.exe run "pacman-key --init;pacman-key --populate archlinux;yes|pacman -Syyu;pacman -S xfce4 firefox rxvt-unicode"
把Scoop Apps 中的 VCXsrv 的快捷方式复制一份到桌面
把属性中的目标加上" -multiwindow",这样启动了X服务器方便了一般程序不受干扰
接着使用 powershell 的管理员模式修改
切换到
C:\ProgramData\chocolatey\lib\pulseaudio\tools\etc\pulse\
目录,
使用
notepad2.exe C:\ProgramData\chocolatey\lib\pulseaudio\tools\etc\pulse\default.pa
其中
第42行
从
load-module module-waveout sink_name=output source_name=input
改成
load-module module-waveout sink_name=output source_name=input record=0
第61行
从
#load-module module-native-protocol-tcp
改成
load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1
文件 C:\ProgramData\chocolatey\lib\pulseaudio\tools\etc\pulse\daemon.conf
第39行
从
; exit-idle-time = 20
改成
exit-idle-time = -1
接着直接运行
pulseaudio.exe
碰到windows防火墙,就放行。
接着设计一个启动程序的批处理
start /B vcxsrv.exe -multiwindow
start "" /B "pulseaudio.exe"
Arch.exe run "if [ -z \"$(pidof xfce4-session)\" ]; then DISPLAY=127.0.0.1:0.0 PULSE_SERVER=tcp:127.0.0.1 startxfce4; pkill '(gpg|ssh)-agent'; taskkill.exe /IM vcxsrv.exe /F; taskkill.exe /IM pulseaudio.exe /F; fi;"
参考
1.x410
爱发电
技术讨论qq群:125969956 仅限打赏者加入