手机远控电脑设计
来源:互联网 发布:武林外传排名知乎 编辑:程序博客网 时间:2024/04/30 07:42
1. HTTP方式设计
在设计前,需要了解一下HTTP协议。
================================================================================================协议头:
GET / HTTP/1.1 //第一个GET代表方法 这两种都是合法的
GET /index.html HTTP/1.1;
GET http://www.hao123.com/index.html HTTP/1.1
一般第二种形式很少 在代理访问时才会是这种形式
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, image/rar */*
接受文件的类型 上面那些是文件描述 固定的
Accept-Language: zh-cn
标识 自然语言
Accept-Encoding: gzip, deflate
支持的压缩方式
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322)
浏览器标识
当年腾讯网页全面拒绝360浏览器,就是通过这个实现的
Host: 192.168.1.4
Connection: Keep-Alive
这句话 我的理解是 客户端允许不断开TCP连接
具体应用,百度搜索引擎里,联想搜索,肯定没有断开
==================================================================================================
先用 recv 阻塞函数 等待浏览器的访问,如果有用户使用浏览器访问的话
那么 recv 会接受到 浏览器的请求数据包:
GET / HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
Accept-Language: zh-cn
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; 360SE)
Host: 192.168.1.5
Connection: Keep-Alive
注意第一个: GET / HTTP/1.1 ,我们可以分析得到的数据,看看 如果发现有GET / HTTP/1.1 说明是浏览器访问的,那么我们就可以将预先设计好的HTML文件 用 send 发送给对方。在发送前需要先发送一个协议头。
HTTP/1.1 200 OK // 标识成功
Server: L、 // 服务器的名字
Content-Length: 1514 // html文件的大小 很重要滴
Content-Type: text/html;charset=GB2312 // 编码方式
Expires: Sat, 28 Jan 2012 02:58:38 GMT
Connection: close // 我的理解是可以断开的TCP连接
再紧接着发送预先设计的HTML文件。这样对方的浏览器就能完整的显示出你发送过去的网页。
当对方点击你发送的HTML文件中的某一个超链接,例如 超链接指向的是 l.html 页面。那么我们得到的数据包就是:
GET /l.html HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
Referer: http://192.168.1.5/
Accept-Language: zh-cn
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; 360SE)
Host: 192.168.1.5
Connection: Keep-Alive
注意第一行:GET /l.html HTTP/1.1
我们就可以根据这个信息得到对方点击的是哪个超链接,那么我们就反馈相应的HTML网页。
你可以通过抓包工具得到我的程序发送、接受的数据包。在我的程序中,操作电脑的超链接所指向的页面,实际上是不存在的。
例如,在【进程管理】的页面中,【结束 PID】 的超链接所指向的页面假如是:KILLPID2003.html。(2003 是进程的PID)这个页面实质上不存在的。目的只是想通过超连接得到用户所要结束的 PID。假设用户点击了这个超链接,那么得到的数据包就是:
GET /KILLPID2003.html HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
Referer: http://192.168.1.5/GetWindow.html
Accept-Language: zh-cn
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; 360SE)
Host: 192.168.1.5
Connection: Keep-Alive
注意第一行:GET /KILLPID2003.html HTTP/1.1 ,我们可以分析这一句。得到的PID是2003,那么就可以遍历进程,对比PID,结束相对应的PID进程就行了,然后重新遍历进程列表,生成HTML文件发送给对方。
整个程序运行的原理大概就是这个样子。只要你遵循数据包的格式发送数据就一定可以成功的。
- 手机远控电脑设计
- 电脑 手机页面设计尺寸
- 自适应电脑、手机和iPad的网页设计方法
- android手机可视化远程控制电脑的设计
- 自适应电脑、手机和iPad的网页设计方法
- 自适应电脑、手机和iPad的网页设计方法
- 自适应电脑、手机和iPad的网页设计方法
- 手机, 电脑和护身符
- 手机连电脑上网
- 电脑通过手机上网
- 手机WIFI连接电脑
- 手机与电脑同步
- Android 手机连接电脑
- 电脑拷贝到手机
- 手机共享电脑网络
- 手机无线连接电脑上网
- andorid手机电脑操作
- 手机连接电脑技巧
- 今天在CSDN黑马程序员训练营的分享
- silverlight如何更新
- java中的IO与NIO
- unity3d 基础入门
- [android2.3]GPS启动流程及数据流向分析
- 手机远控电脑设计
- C# 多线程断点续传
- Yii: 日期和时间控件的使用
- ThreadPool,WaitCallback,QueueUserWorkItem
- 后缀数组 poj3693
- 从零开始学习iphone开发课程
- 关于java中“\”转义的问题
- Cool modes in Emacs
- ORACLE-Transparent Data Encryption (TDE)