开放式问题:

开放式问题:

我开始使用 Win-Kex 包来为 WSL2 Kali Linux 创建 GUI。它运行正常,但是 TigerVNC 查看器看起来模糊且难以阅读。 在此输入图像描述 经过调查,我发现这是由Windows缩放和布局设置(设置为默认150%)引起的。如果我将其更改为 100% Kali Linux 看起来不错,但 Windows 图标和文本太小。 在此输入图像描述 我知道过去有一个技巧可以更改单个应用程序的高 DPI 设置(但是,由于 exe 托管在 WSL 中,我无法使用此设置)

有想法该怎么解决这个吗?

谢谢,杰克

答案1

我想我在 Windows 11 上解决了这个问题。我将缩放比例设置为 100%。然后我在“设置”>“辅助功能”>“文本大小”中调整了测试大小。

答案2

遗憾的是,更改文本大小也适用于外部非高 dpi 屏幕。

此外,至少在我的 Windows 10 笔记本电脑上,文本缩放看起来非常难看(破坏了应用程序的样式),并且仅适用于某些文本元素,而其他文本元素和图标都太小了。

因此,我对这个解决方案非常不满意并进行了搜索:

Windows任务管理器告诉我们VNC客户端的可执行路径:“\wsl.localhost\kali-linux\usr\lib\win-kex\TigerVNC\win-kex-win-x64”

将其复制到我们的 Windows 驱动器(并添加 .exe 文件扩展名)使我们能够更改兼容性设置:
Windows 资源管理器 -> 文件上下文菜单 -> 属性
-> 选项卡:兼容性 -> 更改高 DPI 设置
-> 检查: “覆盖高 DPI 缩放行为。”
-> 下拉选择:“应用程序”

在 Windows 注册表中搜索二进制文件名称向我们展示了它的作用:

Folder: HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers
Key: C:\path-to-copy\win-kex-win-x64.exe
Type: REG_SZ
Value: ~ HIGHDPIAWARE

断开自动启动的 VNC 客户端连接 (F8 -> dis_c_onnect) 并使用副本连接到 kali_linux_ip:5901 允许 kali 的 X 服务器使用屏幕的本机分辨率。

开放式问题:

  • 我们能否以某种方式将相同的兼容性设置应用于原始客户端的路径?
    将注册表项从“C:\path-to-copy\win-kex-win-x64.exe”更改
    为“\wsl.localhost\kali-linux\usr\lib\win-kex\TigerVNC\win-kex- win-x64”遗憾的是似乎没有做任何事情。
  • 我们如何让 kex 以正确的原始分辨率启动 X 服务器?

答案3

你可以尝试这个解决方案,它是基于@xogoxec344的答案并做了一些更改,我们可以locate and modify the executable program responsible for starting the Kali WSL distribution and adjust its DPI settings.通过这种方法成功。

根据WSL文档,我们可以通过执行在Windows主机系统的CMD / PowerShell中启动Kali WSL发行版,这是in CMD / PowerShellkali的缩写形式。kali.exe实际上,kali.exe对应于位于系统环境变量内的路径之一中的可执行文件Path

所以你可以尝试以下步骤:

  1. kali.exe找到使用命令的路径

    Get-Command -ShowCommandInfo kali
    
  2. kali.exe使用 Windows 资源管理器打开包含的文件夹

  3. 右键单击kali.exeProperties从上下文菜单中选择。

  4. 转到Compatibility选项卡并单击Change high DPI settings

  5. 在出现的子窗口中,选择Use this setting to fix scaling problems for this program instead of the one in settings

你也可以参考我的帖子https://www.pwn.fan/en/post/Issues-Series-Blurry-Screen-in-Kali-When-Connecting-By-Win-KeX-In-WSL/了解详情。

相关内容