c 远程控制 远程控制!C语言编程教学:简单远控制作教学,送源码!

小编 2024-10-06 新闻中心 23 0

远程控制!C语言编程教学:简单远控制作教学,送源码!

关注《一碳科技》获取更多干货哦!

远程控制鼠标

小编又给大家带来干货啦,而且此次干货是大家比较感兴趣的——远程控制鼠标 ,和之前一样,小编使用的是socket 来实现的,说难也难,说简单也简单,对于接触过socket的同学可能会简单一点,而刚刚入门的同学对于这个可能会有点难以理解,但是,既然你看了小编的文章,那么小编就尽力让你看得懂、学得会!

上菜!

首先,我们需要用到windows.h、WinSock2.h、stdio.h 这三个头文件,除了以上三个以外,我们还需要一个ws2_32.lib 链接库。

我们要编写两个函数,分别实现连接控制端、接受控制端数据并设置鼠标位置 ,小编分别取名为socket_connet()、recv_setpos()。

socket_connet()

这个函数中,我们需要申请一个WSADATA 类型的变量用来储存WSAStartup() 函数初始化返回的初始化信息的,除此之外还需要一个SOCKET类型变量、SOCKADDR_IN结构体。

第一步先初始化,然后才能使用其他的socket函数,这一点必须要记住!初始化完成之后就要开始连接服务器了,这时我们会用到connet函数,但是在使用connet函数之前,我们要申请一个套接字,这就需要用到socket函数了。

socket()函数 第一个参数是套接字使用的协议族,通常是AF_INET ,第二个参数是我们要使用的通讯协议,这里我们使用的是TCP ,所以这里填SOCK_STREAM ,第三个参数一般填0。紧接着,我们将控制端的ip地址、所使用的协议族、端口号等数据填入SOCKADDR_IN结构体中。

接下来就是使用connet函数 连接控制端了,这个函数比较简单,第一个参数是我们刚才申请的套接字,第二个参数是服务器的地址信息(SOCKADDR_IN ),第三个是SOCKADDR_IN所占的空间大小。写到这里,我们已经成功连接了控制端了。

recv_setpos()

接收控制端发过来的数据 就要使用的recv()函数 ,这个函数需要四个参数,第一个参数是我们申请的套接字,第二个参数是存放数据的“地方”,第三个是存放数据的“地方”大小,第四个参数设置为0,具体实现步骤可以在源码上看到。

小编使用一个int类型的数组,用来储存控制端发过来的鼠标位置信息 ,该数组只有一个成员,小编实现控制鼠标的步骤是,接收控制端发过来的鼠标X轴数据填入POINT结构体中 ,然后再接收控制端发过来的鼠标Y轴数据填入POTIN结构体中

POINT结构体是用来存储鼠标位置信息的,成员为两个LONG类型 的变量,我们的光标X、Y轴数据就存储在这两个变量当中,设置鼠标位置需要用到SetCursorPos()函数 ,这个函数接收两个LONG类型的参数,分别表示光标在X轴、Y轴上的位置。

如何做到实时更新鼠标位置?

小编使用一个while循环不断地接收控制端发过来的鼠标位置数据,然后在循环里设置鼠标位置,在不断地循环当中,鼠标就像被远程控制一样,控制端的鼠标在哪,被控端的鼠标就在哪。

控制端,源码获取

由于时间问题,控制端教学 将在下一篇文章中发布,关注《一碳科技》及时了解最新教程。

如何获取源码?

先关注《一碳科技》 ,程序源码将在下一篇文章中发给大家,所以,想要获取源码的同学,可以留意《一碳科技》 的动态。

要实用还得看 C#!六款最新高实用性 C#开源项目分享

C# 作为一款老牌语言,虽然在热度上和流行性上和别的语言有所差距,但在 Windows 生态中,C# 仍然有重要的一席之地,围绕 Windows 生态,C# 仍然能拥有强大的力量。今天为大家介绍的就是六款高实用性的 C# 项目,一起来看看吧。

1.SiMay远程控制管理系统

项目作者:koko

开源许可协议:AGPL-3.0

项目地址:https://gitee.com/dWwwang/SiMayRemoteMonitorOS

本项目是一个Windows远程控制系统,项目完全采用C# .NET开发,实现了基于逐行扫描算法远程桌面,桌面视图墙,文件管理,实时语音、视频监控,注册表管理,实时进程管理等功能,各模块采用独立连接,支持异常情况重连。

2.e-contract

项目作者:zygforever

开源许可协议:Apache-2.0

项目地址:https://gitee.com/zygforever/e-contract

电子合同签订系统,全程线上签约,秒速签署,支持PC、手机、微信等多终端签署, 随时随地签合同。

3.WeaveNet

项目作者:dreamsfly

开源许可协议:Apache-2.0

项目地址:https://gitee.com/UDCS/WeaveAI

使用C#编写的用于神经网络的计算图框架computational graph。带cnn,bp,fcn,lstm,convlstm等示例。使用方法接近pytorch。

4.SourceGit

项目作者:leo

开源许可协议:MIT

项目地址:https://gitee.com/sourcegit/SourceGit

开源的Git客户端,仅用于Windows 10。单文件,无需安装,< 500KB。

5.Quartz.NetUI

项目作者:x_discoverer

开源许可协议:MIT

项目地址:https://gitee.com/x_discoverer/Quartz.NetUI

基于.NetCore + Quartz.Net + Vue 开箱即用的定时任务UI。几乎没有上手难度,不依赖数据库,只需在界面做简单配置。

6.FastTunnel

项目作者:SpringHgui

开源许可协议:Apache-2.0

项目地址:https://gitee.com/Hgui/FastTunnel

FastTunnel是一款高性能跨平台内网穿透工具,使用它可以实现在公网上访问您的内网服务。

如果你想去 Gitee 上看看更多 C# 项目,那就点击下方了解更多前往 Gitee 吧。

相关问答

c语言能完成远距离控制吗?

C语言本身是一种编程语言,用于开发各种软件和嵌入式系统,包括远程控制应用程序。因此,可以使用C语言来编写能够完成远距离控制的应用程序。对于远程控制,需...

奔驰c手机控制app有哪些功能?

奔驰C车系的手机控制App名为"Mercedesme",这款App提供了许多实用的功能,以下是其中几个主要功能:1.远程控制:用户可以通过App操控车门、车窗和天窗的开关.....

吉利几何c怎么远程操控?

吉利几何C可以通过远程操控系统进行操作。首先,您需要下载并安装吉利几何C的官方APP,并通过手机与车辆进行连接。然后,您可以通过APP上的界面来远程控制车辆...

奔驰c260远程控制已停用是咋回事?

据了解,奔驰c260远程控制已停用是因为该车型的远程控制系统存在安全漏洞,可能会被黑客攻击。为了保障用户的安全,奔驰公司决定暂时关闭该车型的远程控制功能。...

斐讯路由器远程管理怎么设置?

在路由器管理界面的系统工具--远端WEB管理,将管理地址设置为远程主机(路由器)的公网IP或者设置为:255.255.255.255即可。SOHO级路由器:在路由器管理界面的...

如何远程控制局域网电脑?-小红薯4F17880C的回答-懂得

用QQ里面的那个远程控制,在对话框的上面想控制的话必须是要控制的电脑里面也装那个控制软件。什么名字只有你自己搜了因为最近出来好多新的软件

怎样设置电脑的远程控制-c625KDn2的回答-懂得

楼上正解,详细一些,对于win10系统:开始-》设置-》系统-》远程桌面-》打开“启动远程桌面”下面的开关-》弹出来的页面点击确定对于win7系统:计算机...

我电脑在关机的时候上面提示有人正在远程控制我的计算机,我该怎么办?

是杀毒软件报警吗?上面是有路径的,比如C:/桌面/xxx。exe程序正在远程控制,注入代码/访问网站……然后就你根据他给的路径,找到那个文件,你看看是什么软件,...

手机怎么远程控制电脑?

手机远程控制电脑有几种方式:1、通过Teamviewer控制。Teamviewer是一款远程控制软件,可以用于电脑远程控制和手机远程控制电脑。该软件是共享软件,只要不是用...

怎么看自己电脑是否被远程控制了呢?-ZOL问答

如没有,关闭控制面板里的远程控制,然后开启防火墙,不允许远程控制。有用(0)回复有的,你需要远程别人还是什么呢有用(0)回复开始--运行--在对话框中输入CM...