远控鼠标!C语言简单编程:整舍友必备+附送实例源码!-1.jpg (10.71 KB, 下载次数: 0)

2018-10-11 05:24 上传

关注《一碳科技》有更多干货等着你哦!

远控鼠标

远控鼠标,顾名思义就是远程控制鼠标,听起来就有些复杂对不对?是的,有些人一听到这个词,就会感触感染要实现远控鼠标是一件很麻烦的事情,但其实不是的!要实现这个功能很简单,下面就让小编来率领你们学会如何实现——远控鼠标。

想要实现这个功能,就得有一定的socket编程基础,和一定的C语言基础,相信这些对大部分小伙伴都是小意思的吧?

远控鼠标!C语言简单编程:整舍友必备+附送实例源码!-2.jpg (58.53 KB, 下载次数: 0)

2018-10-11 05:24 上传

讲一下原理

首先跟巨匠讲一下小编要实现这个功能的思路,向被控制的计算机发送一组数据,这组数据就是我们的鼠标坐标信息,然后被控制的电脑就通过这组数据来设置鼠标的位置。

远控鼠标!C语言简单编程:整舍友必备+附送实例源码!-3.jpg (37.13 KB, 下载次数: 0)

2018-10-11 05:24 上传

我们在细分一下,首先在我们的控制端设置一个办事器,这个办事器处于期待连接状态,被控制的计算机主动向办事器倡议连接,连接成功后,办事器将向被控制的计算机发送办事器光标的X轴坐标信息,被控端接到之后向办事器发送“已接收”的信号,办事器收到信号后再将办事器光标的Y轴坐标信息发送被控端。

远控鼠标!C语言简单编程:整舍友必备+附送实例源码!-4.jpg (28.98 KB, 下载次数: 0)

2018-10-11 05:24 上传

这时候被控端已经获得了办事器的光标位置信息,随后被控端将自身光标的位置设置为办事器发送过来的光标位置,可是到这里还没完,因为我们要时刻更新被控真个光标位置,以致于它看起来就跟办事器光标的同步移动一样,所以,我们要使用一个循环不断地重新设置鼠标位置,并且办事器也使用一个循环不竭地发送光标位置信息。

脱手实现

首先我们要在我们电脑上制作一个程序,这个程序就相当于我们的“办事器”程序,上面已经说了大体的实现原理,所以我们现在就开始用代码来一步步实现它,关于客户真个制作体例在上一篇文章,有兴趣的可以在《一碳科技》的主页看到。

远控鼠标!C语言简单编程:整舍友必备+附送实例源码!-5.jpg (28.47 KB, 下载次数: 0)

2018-10-11 05:24 上传

代码步调

首先申请一个套接字,然后绑定好端口,在这之后就开始监听,当接收到客户端传来的连接信息的时候,就开始向客户端发送光标的X轴信息,之后期待接收客户端发过来的“已接收”信息,紧接这发送光标的Y轴位置信息,然后开始循环这些步调。

申请一个套接字

在进行socket编程之前,我们先使用WSAStartup()函数初始化,记住!在使用socket()函数之前的第一步就是初始化,这一点一定要记住!WSAStartup()函数初始化完成之后,会将初始化的信息保存在一个WSADATA类型的结构体里, 所以在使用WSAStarup()函数之前要申请一个WSADATA类型的结构体。

远控鼠标!C语言简单编程:整舍友必备+附送实例源码!-6.jpg (26.62 KB, 下载次数: 0)

2018-10-11 05:24 上传

初始化完成之后就开始申请一个套接字,这时我们会用到socket()函数,在这里小编使用的是ipv4协议族和TCP协议,所以这个函数的参数小编别离填为:AF_INET、SOCK_STREAM,剩下的一个参数通常填0。

远控鼠标!C语言简单编程:整舍友必备+附送实例源码!-7.jpg (4.19 KB, 下载次数: 0)

2018-10-11 05:24 上传

开始监听

套接字申请成功之后,我们要将办事器的IP地址、使用的协议族、使用的端口号等信息填入SOCKADDR_IN结构体里面,然后将办事器的socket与本地端口绑定在一起,这要使用到bing(),这个函数需要用到三个参数,别离为办事器的套接字、适才申请SOCKADDR_IN(强制转换为SOCKADDR *)结构体的地址,第三个参数为第二个参数所占的字节数。

远控鼠标!C语言简单编程:整舍友必备+附送实例源码!-8.jpg (26.47 KB, 下载次数: 0)

2018-10-11 05:24 上传

准备工作做好了,开始监听,这时我们会用到listen()函数,这个函数接受两个参数,一个是办事器的套接字,一个是最大连接数(自己定)。

远控鼠标!C语言简单编程:整舍友必备+附送实例源码!-9.jpg (6.81 KB, 下载次数: 0)

2018-10-11 05:24 上传

循环发送光标位置信息

监听开始,然后开始期待客户端连接,我们使用accept()函数来期待客户端连接,具体实现体例如下图。

远控鼠标!C语言简单编程:整舍友必备+附送实例源码!-10.jpg (8.26 KB, 下载次数: 0)

2018-10-11 05:24 上传

在接收到客户真个连接请求后,办事器开始向客户端循环发送鼠标位置信息,具体实现体例如下图

远控鼠标!C语言简单编程:整舍友必备+附送实例源码!-11.jpg (20.31 KB, 下载次数: 0)

2018-10-11 05:24 上传

获取源码

由于时间的关系,本篇文章写得有点仓促,并且程序源码是由之前socket编程教学源码改进过来的,所以本篇文章的源码存在一些不足的处所,可是这些不足的处所没有多大影响,有耐心的朋友可以根据自己的需求进行更改,就当作一次练习吧!

获取源码

先关注《一碳科技》,然后在文章下方评论心得,紧接着私信关键字:“远控鼠标源码获取”,注意关键字不克不及错哦!

更多内容回复查看:

游客,如果您要查看本帖隐藏内容请回复

c语言远控,远控鼠标!C语言简单编程:整舍友必备+附送实例源码!相关推荐

  1. c语言 临时文件作用,c语言函数mktemp()产生唯一临时文件名实例源码介绍

    c语言函数mktemp()产生唯一临时文件名实例源码介绍.有关的函数:tmpfile引入的头文件:#include 定义函数mktemp():char * mktemp(char * template ...

  2. c语言复制粘贴源码,c语言函数memccpy()如何复制内存中的内容实例源码介绍

    c语言函数memccpy()如何复制内存中的内容实例源码介绍.引入的头文件:#include memccpy()函数定义:void * memccpy(void *dest, const void * ...

  3. c语言比较函数memcmp,c语言函数memcmp()如何比较内存前n个字节实例源码介绍

    c语言函数memcmp()如何比较内存前n个字节实例源码介绍.引入头文件:#include 定义memcmp()函数:int memcmp (const void *s1, const void *s ...

  4. python 操作键盘,鼠标 。我这个是自动企业微信加好友的,源码可以修改成别的。挺好使!

    python 操作键盘,鼠标 .我这个是自动企业微信加好友的,源码可以修改成别的.挺好使! 键盘的按键码可以去百度搜,大体就是这么操作的 import win32con import win32api ...

  5. 时间转秒函数c语言,c语言函数mktime()如何将时间转换成经过的秒数实例源码

    c语言函数mktime()如何将时间转换成经过的秒数实例源码. 需要引入的头文件:#include 定义函数:time_t mktime(strcut tm * timeptr); 函数mktime( ...

  6. 仿酷狗音乐播放器开发日志十八——换肤功能的实现二:改变控件和窗体透明度(附挂件类源码)...

    转载请说明原出处,谢谢~~ 昨天把大致布局分析了一下,昨天晚上把布局写好实现了,今天把大致的功能完成了一下,现在的外观已经和原酷狗的换肤界面完全一样,其中的调整播放列表透明度和设置整个软件透明度的代码 ...

  7. 仿酷狗音乐播放器开发日志十八——换肤功能的实现二:改变控件和窗体透明度(附挂件类源码)

    转载请说明原出处,谢谢~~ 昨天把大致布局分析了一下,昨天晚上把布局写好实现了,今天把大致的功能完成了一下,现在的外观已经和原酷狗的换肤界面完全一样,其中的调整播放列表透明度和设置整个软件透明度的代码 ...

  8. Silverlight实用窍门系列:42.读取拖动到控件上的外部txt和jpg文件,多外部文件的拖动【附带实例源码】...

    本实例将读取拖动到Silverlight的ListBox控件中的txt文件或者Jpg文件.在本实例中将讲如果通过UIelementA.Drop事件获取到拖动到UIelementA上的文件的相关名称以及 ...

  9. C#语言实例源码系列-鼠标左右键颠倒

    专栏分享 点击跳转=>Unity3D特效百例 点击跳转=>案例项目实战源码 点击跳转=>游戏脚本-辅助自动化 点击跳转=>Android控件全解手册

最新文章

  1. LoRDEC:hybrid correction of long reads 长读的混合校正
  2. Joomla 2.5 中文语言包安装模板报错
  3. 定域性和实在性之矛盾的世界
  4. arima模型 p q d 确定_时间序列分析第07讲(ARIMA模型,季节时间序列模型,均值的估计)...
  5. git cherry-pick 详解 —— Git 学习笔记 18
  6. 开发提交审核流程_小程序如何提交审核,多久能通过?
  7. c++用模板实现稀疏多项式_用线性表实现一元多项式及相加运算
  8. 虚拟机网络无法连接问题解决(超简单)
  9. bzoj1132:[POI2008]Tro
  10. Fiddle改包场景01——拦截请求,修改请求,放行请求
  11. Struts2.X深入浅出 学习笔记
  12. Zookeeper-watcher机制源码分析(一)
  13. windows补丁下载说明
  14. MATLAB提取 .fig 文件中的数据
  15. 文秘计算机考核,行政文秘绩效考核
  16. spark-streaming 编程(六)mapwithState
  17. linux 查看显卡信息及显卡驱动信息
  18. 【OpenGL】查看显卡对OpenGL的支持程度
  19. 聊一聊Java中的悲观锁和乐观锁
  20. jQuery-什么是jQuery

热门文章

  1. Linux命令 - zip命令
  2. python学习第十天
  3. golang 1-helle golang
  4. 【Java基础】Java基础题
  5. day55判断子序列_不同的子序列
  6. java里Math求倒数_java倒数60s实现
  7. SQL查询实现,记录排序编号
  8. git 删除分支和删除文件夹
  9. Fisco技术文档总结1---搭建第一个区块链网络
  10. 支付宝统一支付回调接口(适用于H5、PC、APP)