gpt4 book ai didi

c# - 简单的 C# 屏幕共享应用程序

转载 作者:可可西里 更新时间:2023-11-01 08:08:06 29 4
gpt4 key购买 nike

我想用 C# 创建一个非常基本的屏幕共享应用程序。无需 Remote 。我只希望用户能够将他们的屏幕广播到网络服务器。

我应该如何实现? (任何指向正确方向的指针将不胜感激)。

它不需要很高的 FPS。甚至更新 5 秒左右就足够了。您认为每 5 秒向我的 Web 服务器上传一次屏幕截图就足够了吗?

最佳答案

我之前写过关于 how remote screen sharing software works here 的博客,它不是特定于 C#,但它提供了对该主题的良好基本理解。该文章中还链接了远程帧缓冲区规范,您可能还想继续阅读。

基本上您会想要截取屏幕截图,您可以传输这些屏幕截图并在另一侧显示它们。您可以保留最后一张截图,并分块比较截图,看看您需要发送截图的哪些 block 。您通常会在发送数据之前进行某种压缩。

要进行远程控制,您可以跟踪鼠标移动并将其传输并在另一端设置指针位置。击键也是如此。

就 C# 中的压缩而言,您可以简单地使用 JpegBitmapEncoder使用 Jpeg 压缩创建您想要的质量的屏幕截图。

JpegBitmapEncoder encoder = new JpegBitmapEncoder();
encoder.QualityLevel = 40;

要比较文件 block ,您可能最好在旧 block 和新 block 上创建哈希,然后检查它们是否相同。您可以使用任何 hashing algorithm你想要这个。

关于c# - 简单的 C# 屏幕共享应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3295309/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com