自定義協議
A. c#socket 怎麼自定義協議
基於C#的通信協議封包(附代碼)
接上一篇《基於.NET技術的監控系統應用分析》中所描述的數據通信協議設計,我們來看一下在C#中是怎麼對自定義協議進行封包的?我們知道基於流的數據協議的特點:發送和接收到的數據都是連續的流。每次網路I/O操作的流長度不確定,也就是無法知道每次接收到的數據是一個完整的數據包。同樣,主機發送一個數據包也會根據網路的實際情況執行若干次。所以我們對這類消息的編解碼過程需要進行一個統一的封裝。
重新回顧一下每個消息的結構:消息頭 + 消息體。每次先發送出去的是消息頭,然後是消息體。消息頭里描述了這個數據包的類型,長度,序列號等信息。消息頭的長度是固定的,消息體的長度是根據每個消息類型會有所的區別。
http://www.cnblogs.com/wildman/archive/2009/07/06/1517629.html
B. 如何增加自定義協議 protocol
如何實現IE自定義協議 QQ對IE地址欄的東西做了監控。而且可以發現輸入地址確定之後他就啟動了timwp.exe這個程序。 方法一: 也就是QQ和PPlive所採用的方法,在注冊表裡面添加兩種類型的注冊。 QQ的: Windows Registry Editor Version
C. 怎麼自定義協議
1、打開控制面板,依次進入「網路和Internet」-「網路連接」-右擊「本地連接」,在彈出的屬性對話框中雙擊「Internet協議版本6(Tcp/IP),在其屬性框中選擇手動,輸入IPv6地址「3FFE:FFFF:7654:FEDA:1245:BA98:3210:4562」(由於IPv6處於測試階段,因此可以自由輸入確定其地址)。2、按「Win+R」打開運行對話框。輸入CMD,在彈出的MSDOS窗口中輸入「ipconfig」命令來查看本地的所有IP地址配置情況。3、配置ISATAP隧道,完成後,打開瀏覽器,輸入網址「/」進行IPv6的測試,在頁面上,如果能夠看到一隻跳舞的小老虎,則說明您以IPv6訪問該網頁,
D. 怎麼自定義應用層協議
首先確定你所使用的通信方式,UPD或者TCP,然後根據定義協議,其實也就是一種通信方式,你是做上位機軟體嗎?還是應用層面的。
E. 如何實現自定義的URL協議
如何實現IE自定義協議
QQ對IE地址欄的東西做了監控。而且可以發現輸入地址確定之後他就啟動了timwp.exe這個程序。
方法一: 也就是QQ和PPlive所採用的方法,在注冊表裡面添加兩種類型的注冊。
QQ的:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\TENCENT]
@="TencentProtocol"
"URL Protocol"="C:\\Program Files\\Tencent\\QQ\\Timwp.exe"
[HKEY_CLASSES_ROOT\TENCENT\DefaultIcon]
@="C:\\Program Files\\Tencent\\QQ\\Timwp.exe,1"
[HKEY_CLASSES_ROOT\TENCENT\shell]
[HKEY_CLASSES_ROOT\TENCENT\shell\open]
[HKEY_CLASSES_ROOT\TENCENT\shell\open\command]
@="\"C:\\Program Files\\Tencent\\QQ\\Timwp.exe\" \"%1\""
PPlive的:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Synacast]
@="URL:synacast Protocol"
"Version"="1.5.38"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\Synacast\DefaultIcon]
@="C:\\Program Files\\PPLive\\PPLive.exe"
[HKEY_CLASSES_ROOT\Synacast\Shell]
[HKEY_CLASSES_ROOT\Synacast\Shell\Open]
[HKEY_CLASSES_ROOT\Synacast\Shell\Open\Command]
@="C:\\Program Files\\PPLive\\PPLive.exe \"%1\""
通過多方查找終於發現是注冊表這兩項在起作用,原來只要在注冊表裡象添加文件擴展名一樣,添加兩個Synacast和TENCENT擴展名來,IE就會自動查找到這里來調用相應的程序。IE果然和windows系統內核整合起來了!原來注冊表擴展名項還有這種作用,自己見識太少了,這種方法實現IE地址的自定義估計是最簡單的了。
方法二:一開始不知道方法一的時候,在網上找了很多可以實現這種功能的代碼,採用BHO(Browser Helper Object,瀏覽器輔助對象)或者IURLSearchHook介面 來做到。也就是通常所說的IE插件了,我這里統稱為方法二。如果不知道什麼叫做BHO和IURLSearchHook的就去搜索一下吧,最近流氓插件很火,所以這個技術也有多人提到,藉助IURLSearchHook還可以實現中文實名上網等功能,不過那些臭名昭著的流氓軟體可都不是這樣子坐的他更多的精力是放到防止別人卸載那邊去了。
因為我沒有編寫過ATL或者COM方面的程序,所以也就借著這個機會寫了個IURLSearchHook的實現,以後碰到IE插件編程,ATL編程,COM編程,Shell介面編程的時候也好能夠玩一玩,好像shell介面編程還是有很多有意思東西的。
F. 一個js方法里調用兩個自定義協議,但是只能調用到一個,求大神解答
首先,不明白這個定時器的作用是什麼,其次可以嘗試一下,點擊666的時候,直接觸發兩個協議的點擊事件可以嗎?
G. 如何讓IE支持自定義協議..
這可能是您需要的答案:
具體就是在HKEY_CLASSES_ROOT按照下面的樣子建立各個項目:
HKEY_CLASSES_ROOT
CustomProtocol
協議的名稱,版比如電驢權的就是ed2k
(Default) = "URL:Custom Protocol" 協議顯示的名稱,隨便寫寫
URL Protocol = "" 這里可以寫下協議的描述什麼的,否則就為空吧
DefaultIcon
(Default) = "CustomApp.exe" 默認圖標,一般都是CustomApp的名字
shell
open
command
(Default) = "C:\CustomApp.exe" "%1" CustomApp的全路徑名
這樣注冊下就ok了,當用戶點擊網站上那些以CustomProtocol開頭的鏈接的時候,系統就會調用CustomApp,並且把完整的鏈接作為參數傳給CustomApp。
H. 設備間的無線433mhz通信都是自定義協議嗎
433HMz自組網,兄台搞笑了,做了3年的433M都沒發現什麼好的協議,要求自組網還是用zigbee吧,國外有幾家的協議還行。433M一般就直連、透傳,夠用了
I. 找一個c++自定義協議的通信軟體
http://hi..com/2012_star/blog/item/d074c0d9eec0222a5982dd9a.html 這是自定義協議的
附加命令的識別在這個blog也有