无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 310|回复: 19
打印 上一主题 下一主题

[求助] 谁能解释TightVNC服务端程序的几个文件的作用?

[复制链接]
跳转到指定楼层
1#
发表于 昨天 06:52 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
本帖最后由 2013kyj 于 2026-2-27 09:51 编辑

TightVNC的服务端有下面这5个文件, 但是我发现只留下第一个, 删除其它四个, 程序一样能运行, 也没发现啥问题,

求路过大佬, 分析一下其它四个文件的用途, 什么时候才必须用到这四个文件?

问了ai都是不确定的.

tvnserver.exe
setup-helper.dll
screenhooks64.dll
screenhooks32.dll
hookldr.exe
重要提醒: 在运行tvnserver.exe的时候, 我可以直接把另外四个文件删掉, 看来主程序并没有占用/调用它们, 那它们有啥用啊!




20#
发表于 昨天 20:25 | 只看该作者
2013kyj 发表于 2026-2-27 16:23
这解释有有些道理

以上说法主要来自AI代码解析网站DeepWiki,内容不知真假,不过看起来似模似样的。
我不懂C语言,擅长C语言的可以自己去分析源码,其解析网址如下:
deepwiki.com/chenall/tightvnc/4.2-screen-hooks
deepwiki.com/SaiBhargav11/tightvnc-2.8.85/5.1-screen-capture-architecture
*注:以上源码应该是官方源码分叉。
---
对于screenhooks挂钩文件,在Windows8以下版本(7、XP),服务器端会在被控时候检测并加载。
如果没有应该是用的另外方法实现的,效果差一些,加载它时候屏幕的响应和效果会比默认情况好些。
在虚拟机上测试,当启用拖动时显示窗口时,拖影会比未使用这个好很多,不过如果Windows7启用了玻璃透明的话,响应也挺差,应该和虚拟机显卡驱动有关。
64位下这3个文件应该是同时需要的。
在Windows8.x+上这3个文件并不会被调用。
由于我虚拟机上的显卡驱动并不支持DX11(dxdiag显示11——系统支持dx11,但显卡功能级别是10),这个程序应该是假定8.x的系统都支持dx11吧,总之这时候显示有撕裂抖动感,感觉是这个程序检测判断有点问题。
---
以下来自该解析网站说明:
选择优先级:
Win8ScreenDriver(最高优先级):支持 DirectX 11.1 的 Windows 8 及更高版本 - 效率最高,使用 GPU
Win32MirrorScreenDriver:已安装镜像驱动程序的 Windows 7 - CPU 占用率低
Win32ScreenDriver(备用方案):兼容所有 Windows 版本,但 CPU 使用率较高

驱动选择逻辑
工厂会按特定顺序检查系统功能,以确定最佳的屏幕截图方法。

能力检测
驱动类型        操作系统要求        其他要求        检测方法
Win8屏幕驱动程序        Windows 8+        DirectX 11.1,DXGI 1.2        SystemInformation::isVistaOrLater()DXGI API 可用性
Win32MirrorScreenDriver        Windows 7 或更早版本        已安装 DFMirage 镜像驱动程序        通过以下方式枚举驱动程序EnumDisplayDevices()
Win32屏幕驱动程序        任何 Windows        无(GDI 始终可用)        备用方案——始终成功。

该架构使 TightVNC 能够在 Windows XP 到 Windows 11 上提供最佳的屏幕捕获性能,自动利用每个平台上可用的最佳技术。


回复

使用道具 举报

19#
 楼主| 发表于 昨天 16:23 | 只看该作者
门口 发表于 2026-2-27 13:14
搜索了下:
screenhooks.dll
TightVNC 服务器在旧版 Windows 系统(Windows 8 之前)上使用的一种传统屏 ...

这解释有有些道理

点评

以上说法主要来自AI代码解析网站DeepWiki,内容不知真假,不过看起来似模似样的。 我不懂C语言,擅长C语言的可以自己去分析源码,其解析网址如下: deepwiki.com/chenall/tightvnc/4.2-screen-hooks deepwiki.com  详情 回复 发表于 昨天 20:25
回复

使用道具 举报

18#
发表于 昨天 15:46 | 只看该作者
我也想知道
回复

使用道具 举报

17#
发表于 昨天 14:55 | 只看该作者
来了解下
回复

使用道具 举报

16#
发表于 昨天 14:41 | 只看该作者
楼上解释清楚,明白了不少
回复

使用道具 举报

15#
发表于 昨天 13:14 | 只看该作者
搜索了下:
screenhooks.dll
TightVNC 服务器在旧版 Windows 系统(Windows 8 之前)上使用的一种传统屏幕捕获机制。
该组件利用 Windows 系统钩子来拦截和捕获屏幕更新,以便进行远程显示。
程序在 Windows 8 及更高版本使用的系统的桌面复制 API(DXGI 1.2+)更为高效,相对也有些局限性(要求系统版本、特殊环境可能必须、需显卡驱动)。

hookldr.exe
和 screenhooks.dll 配套的,加载 screenhooks.dll 的。

setup-helper.dll
我安装后没看到。


点评

这解释有有些道理  详情 回复 发表于 昨天 16:23
回复

使用道具 举报

14#
发表于 昨天 11:20 | 只看该作者
1. tvnserver.exe
  • 主程序,运行 VNC 服务端,负责监听连接、处理远程控制请求。
  • 必须文件,删除它程序无法运行。


2. setup-helper.dll
  • 用途:用于安装、配置 TightVNC 服务时的辅助模块。
  • 何时使用:当你运行安装程序、配置服务选项(如更改端口、密码等)时可能会调用它。
  • 如果只运行已配置好的服务,不进行安装/卸载/配置修改,可以暂时删除。

3. screenhooks64.dll4. screenhooks32.dll
  • 用途:用于捕获屏幕图像的钩子(hook)模块。
  • 它们的作用:在某些情况下(如使用“镜像驱动”或更高效的屏幕更新方式)会被调用,提升性能或兼容性。
  • 区分32位和64位:根据系统架构或客户端连接方式不同加载。
  • 是否必须?
    • 如果你使用的是标准的 GDI 捕获方式,可能不需要。
    • 但在某些高性能/远程图形场景下可能会用到,尤其在高分辨率或多显示器环境下。


4. hookldr.exe
  • 用途:钩子加载器(Hook Loader),用于在系统中注入钩子程序(如 screenhooks.dll)。
  • 何时使用:当 TightVNC 使用“钩子”方式进行屏幕捕获或键盘鼠标监控时会用到。
  • 如果没启用相关功能,可以暂时删除。


你为什么能删掉这四个文件?
因为你当前运行的 TightVNC 是以最简方式运行,没有启用:
  • 安装/配置界面(不需要 setup-helper.dll)。
  • 高性能屏幕捕获方式(不需要 screenhooks*.dll 和 hookldr.exe)。


回复

使用道具 举报

13#
发表于 昨天 11:15 | 只看该作者
aaaaa54606 发表于 2026-2-27 08:41
这是留下后门给某些人用的,

应用程序开发制作作者这个样子设置确定应用程序功能,什么木马应用程序、后门应用程序
回复

使用道具 举报

12#
发表于 昨天 11:06 | 只看该作者
围观
回复

使用道具 举报

11#
发表于 昨天 10:59 | 只看该作者
本帖最后由 地球守护者 于 2026-2-27 11:13 编辑
2013kyj 发表于 2026-2-27 09:52
重要提醒: 在运行tvnserver.exe的时候, 我可以直接把另外四个文件删掉, 看来主程序并没有占用/调用它们,  ...

运行主要应用程序时候,可以删除,不是表示没有调整使用,只是没有添加dll文件,如果需要32位置数字钩子时候,应用程序,发现无法调整使用,就是显示功能异常,应用程序呢,只是GUI(用户图形界面或图形用户界面),给予我们使用、操作,显示应用程序背后代码,没有GUI,怎么使用应用程序?反向正面,不是需要32dll文件或32位置数字功能,可以删除32dll文件,其它文件保护留着,需要时候,自动调整使用,还有,表面永远欺负骗子
应用程序≠应用程序功能,可以运行应用程序,不是等于应用程序功能正常

回复

使用道具 举报

10#
发表于 昨天 10:54 | 只看该作者
2013kyj 发表于 2026-2-27 09:52
重要提醒: 在运行tvnserver.exe的时候, 我可以直接把另外四个文件删掉, 看来主程序并没有占用/调用它们,  ...

如果不是需要那个32,可以删除32,但是,代价就是,无法调整使用32位置数字功能
回复

使用道具 举报

9#
 楼主| 发表于 昨天 10:20 | 只看该作者
忧心的启 发表于 2026-2-27 10:10
我一直是两个exe,一个是服务端,一个是客户端。这样用了几年了没有问题发生,期间就是研究研究它的通信流量 ...
是流量越小越好的,所以设置一个好的格式和编码是很重要的。

大佬能分享一下保持低流量的配置吗? 多谢.
回复

使用道具 举报

8#
发表于 昨天 10:10 | 只看该作者
我一直是两个exe,一个是服务端,一个是客户端。这样用了几年了没有问题发生,期间就是研究研究它的通信流量问题,发现不同的设置可以得到不同的网络流量(当我注意到这个问题时是因为全系统用的流量最高就是这家伙,当时达到了1TB多),这个是流量越小越好的,所以设置一个好的格式和编码是很重要的。

点评

大佬能分享一下保持低流量的配置吗? 多谢.  详情 回复 发表于 昨天 10:20
回复

使用道具 举报

7#
 楼主| 发表于 昨天 09:52 | 只看该作者
地球守护者 发表于 2026-2-27 07:57
安装程序帮助dll文件?

好像查看,就是钩子dll文件,32、64,对此应该32位置数字和64位置数字,如果不 ...

重要提醒: 在运行tvnserver.exe的时候, 我可以直接把另外四个文件删掉, 看来主程序并没有占用/调用它们, 那它们有啥用啊!

点评

运行主要应用程序时候,可以删除,不是表示没有调整使用,只是没有添加dll文件,如果需要32位置数字钩子时候,应用程序,发现无法调整使用,就是显示功能异常,应用程序呢,只是GUI(用户图形界面或图形用户界面),  详情 回复 发表于 昨天 10:59
如果不是需要那个32,可以删除32,但是,代价就是,无法调整使用32位置数字功能  详情 回复 发表于 昨天 10:54
回复

使用道具 举报

6#
发表于 昨天 09:03 | 只看该作者
路过了


回复

使用道具 举报

5#
发表于 昨天 08:56 | 只看该作者
学习一下
回复

使用道具 举报

4#
发表于 昨天 08:48 来自手机 | 只看该作者
在不同的系统里试试,还有就是不同的操作需求,比方:剪贴板,文件传输等等。能确定后就可以留下一个文件了。
回复

使用道具 举报

3#
发表于 昨天 08:41 | 只看该作者
这是留下后门给某些人用的,

点评

应用程序开发制作作者这个样子设置确定应用程序功能,什么木马应用程序、后门应用程序  详情 回复 发表于 昨天 11:15
回复

使用道具 举报

2#
发表于 昨天 07:57 | 只看该作者
setup-helper.dll

安装程序帮助dll文件?
screenhooks64.dll
screenhooks32.dll

好像查看,就是钩子dll文件,32、64,对此应该32位置数字和64位置数字,如果不是需要32,可以删除32,需要32,必须保存留着,否定规则,无法正常使用32位置数字
hookldr.exe

钩子运行需要的应用程序?

点评

重要提醒: 在运行tvnserver.exe的时候, 我可以直接把另外四个文件删掉, 看来主程序并没有占用/调用它们, 那它们有啥用啊!  详情 回复 发表于 昨天 09:52
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2026-2-28 04:27

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表