久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 4162|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

手機(jī)遠(yuǎn)控電腦程序的編寫思路

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:71922 發(fā)表于 2015-1-11 02:32 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
     原本是一個(gè)獨(dú)立的程序,只是因?yàn)楣δ芎苌倬驼显凇径绦胚h(yuǎn)控電腦 V2.0 Bate】里面。并更名為【手機(jī)遠(yuǎn)控電腦 V3.0 Bate】(總覺得這個(gè)名字有點(diǎn)拗口..)。

    設(shè)計(jì)這個(gè)程序初是因?yàn)槲业囊粋(gè)朋友覺得【短信遠(yuǎn)控電腦 V2.0 Bate】這個(gè)程序要花錢。因?yàn)槭怯枚绦艁砜刂频摹#ㄎ矣X得很郁悶...)
建議我設(shè)計(jì)一個(gè)可以用手機(jī)瀏覽器來控制電腦的程序(現(xiàn)在設(shè)計(jì)完了,我的朋友又覺得沒多大用處。我表示很糾結(jié)...)

    這個(gè)程序?qū)崿F(xiàn)原理還得謝謝小凡,不然我肯定是沒法完成的。感激吖~~~ 每次遇到問題,他都很有耐心解答。太TMD感動(dòng)了...

實(shí)現(xiàn)原理:
        在設(shè)計(jì)前,需要了解一下HTTP協(xié)議。

================================================================================================
協(xié)議頭:
    GET / HTTP/1.1 //第一個(gè)GET代表方法  這兩種都是合法的
    GET /index.html HTTP/1.1;
    GET
http://www.hao123.com/index.html HTTP/1.1
    一般第二種形式很少 在代理訪問時(shí)才會(huì)是這種形式

    Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, image/rar */*
    接受文件的類型  上面那些是文件描述 固定的
    Accept-Language: zh-cn  
    標(biāo)識(shí) 自然語言

    Accept-Encoding: gzip, deflate
    支持的壓縮方式

    User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322)
    瀏覽器標(biāo)識(shí)
    當(dāng)年騰訊網(wǎng)頁全面拒絕360瀏覽器,就是通過這個(gè)實(shí)現(xiàn)的
    Host: 192.168.1.5

    Connection: Keep-Alive
    這句話 我的理解是 客戶端允許不斷開TCP連接
    具體應(yīng)用,百度搜索引擎里,聯(lián)想搜索,肯定沒有斷開

==================================================================================================
先用 recv 阻塞函數(shù) 等待瀏覽器的訪問,如果有用戶使用瀏覽器訪問的話
那么 recv 會(huì)接受到 瀏覽器的請(qǐng)求數(shù)據(jù)包:
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


注意第一個(gè): GET / HTTP/1.1   ,我們可以分析得到的數(shù)據(jù),看看 如果發(fā)現(xiàn)有GET / HTTP/1.1 說明是瀏覽器訪問的,那么我們就可以將預(yù)先設(shè)計(jì)好的HTML文件 用 send 發(fā)送給對(duì)方。在發(fā)送前需要先發(fā)送一個(gè)協(xié)議頭。
HTTP/1.1 200 OK                                          // 標(biāo)識(shí)成功
Server: L、                                                    // 服務(wù)器的名字
Content-Length: 1514                                   // html文件的大小 很重要滴
Content-Type: text/html;charset=GB2312     // 編碼方式      
Expires: Sat, 28 Jan 2012 02:58:38 GMT     

Connection: close                                         // 我的理解是可以斷開的TCP連接

再緊接著發(fā)送預(yù)先設(shè)計(jì)的HTML文件。這樣對(duì)方的瀏覽器就能完整的顯示出你發(fā)送過去的網(wǎng)頁。
當(dāng)對(duì)方點(diǎn)擊你發(fā)送的HTML文件中的某一個(gè)超鏈接,例如 超鏈接指向的是 l.html 頁面。那么我們得到的數(shù)據(jù)包就是:
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  
我們就可以根據(jù)這個(gè)信息得到對(duì)方點(diǎn)擊的是哪個(gè)超鏈接,那么我們就反饋相應(yīng)的HTML網(wǎng)頁。
你可以通過抓包工具得到我的程序發(fā)送、接受的數(shù)據(jù)包。在我的程序中,操作電腦的超鏈接所指向的頁面,實(shí)際上是不存在的。
例如,在【進(jìn)程管理】的頁面中,【結(jié)束 PID】 的超鏈接所指向的頁面假如是:KILLPID2003.html。(2003 是進(jìn)程的PID)這個(gè)頁面實(shí)質(zhì)上不存在的。目的只是想通過超連接得到用戶所要結(jié)束的 PID。假設(shè)用戶點(diǎn)擊了這個(gè)超鏈接,那么得到的數(shù)據(jù)包就是:
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,那么就可以遍歷進(jìn)程,對(duì)比PID,結(jié)束相對(duì)應(yīng)的PID進(jìn)程就行了,然后重新遍歷進(jìn)程列表,生成HTML文件發(fā)送給對(duì)方。
整個(gè)程序運(yùn)行的原理大概就是這個(gè)樣子。只要你遵循數(shù)據(jù)包的格式發(fā)送數(shù)據(jù)就一定可以成功的。
======================================================================================================

    【手機(jī)遠(yuǎn)控電腦 V3.0 Bate】分兩個(gè)模式:一個(gè)是短信模式,一個(gè)瀏覽器模式。
    現(xiàn)在主要看看 瀏覽器模式。(手機(jī)或電腦的瀏覽器均可登錄操作...)
    主界面:



    這個(gè)是啟動(dòng)之后的頁面,注意,內(nèi)網(wǎng)的要在路由設(shè)置端口映射,然后在 希網(wǎng)動(dòng)態(tài)域名或花生殼等 申請(qǐng)免費(fèi)的動(dòng)態(tài)域名。
再將域名指向自己的外網(wǎng)IP。手機(jī)就可以通過域名訪問連接到你的電腦。還有一點(diǎn),ADSL 用戶要通外網(wǎng)是無法用 80 端口的。被營運(yùn)商出于某種目的給故意屏蔽了。
   由于采用 POST 方式,接收不到手機(jī)瀏覽器發(fā)送的口令(原因不詳),所以只能暫用GET 方式提交表單。



    這個(gè)是【功能區(qū)】,暫時(shí)只有四個(gè)功能:【窗口管理】、【進(jìn)程管理】、【重啟系統(tǒng)】、【關(guān)閉系統(tǒng)】。


    這個(gè)是【窗口管理】頁面(粉紅色的是被隱藏的窗口):


    這個(gè)是【進(jìn)程管理】頁面:



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩

相關(guān)帖子

回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产精品一区二区三区四区 | 久久精品欧美一区二区三区麻豆 | 久久91精品国产 | 日日干日日操 | 伊人二区| ririsao久久精品一区 | 精品中文字幕久久 | 国产精品99久久久久久人 | 久久91 | 美女在线视频一区二区三区 | 毛片av免费在线观看 | 欧美一区两区 | 国产精品亚洲欧美日韩一区在线 | 激情av在线 | av性色| 最新一级毛片 | 色偷偷噜噜噜亚洲男人 | 国产福利91精品一区二区三区 | 欧美日韩一区精品 | 亚洲国产精品自拍 | 理论片87福利理论电影 | 99免费| 国产一区二区中文字幕 | 久久久久久免费免费 | av片网站| 久久久久高清 | 中国一级大黄大片 | 日日干夜夜干 | 国产精品福利在线 | 伊人焦久影院 | 成年视频在线观看 | 国产日韩久久 | 欧美多人在线 | 夜夜夜操| 日韩在线欧美 | 久久久青草婷婷精品综合日韩 | 91精品国产综合久久福利软件 | 美女在线一区二区 | 久久久久久久久久久久一区二区 | 91精品无人区卡一卡二卡三 | 国产日韩免费观看 |