精彩的人生

          好好工作,好好生活

          BlogJava 首頁(yè) 新隨筆 聯(lián)系 聚合 管理
            147 Posts :: 0 Stories :: 250 Comments :: 0 Trackbacks
          MSN?Messenger?6.0?這個(gè)版本中相比以前增加了很多激動(dòng)人心的功能,如:更漂亮的界面,更多的表情符號(hào),可設(shè)置個(gè)人頭像,聊天窗口的背景圖片支持,P2P功能支持,聯(lián)機(jī)游戲等,在這個(gè)版本中增強(qiáng)了的標(biāo)簽功能,對(duì)于廣大?MSN?Messenger?愛(ài)好者來(lái)說(shuō),尤其帶來(lái)了許多樂(lè)趣,本文將主要對(duì)?MSN?Messenger?的標(biāo)簽的使用和開發(fā)進(jìn)行探討。


          什么是?MSN?Messenger?標(biāo)簽??


          MSN?Messenger?標(biāo)簽是對(duì)?MSN?Messenger?功能的一種擴(kuò)展,如圖1所示。MSN?Messenger?已經(jīng)內(nèi)置了許多功能擴(kuò)展,如?MSN?Alerts等?.NET?My?Services?,除此之外,還將?www.msn.com?提供的許多個(gè)性服務(wù)都集成到?MSN?Messenger?里面了,如股票行情、新聞、旅游、汽車、購(gòu)物、游戲等。?



          除了這些內(nèi)置的標(biāo)簽之外,我們還可以增加自己特殊的標(biāo)簽,將常用的一些在線功能(閱讀新聞、查看天氣預(yù)報(bào)等)集成到?MSN?Messenger?中,將其變?yōu)橐粋€(gè)功能豐富而強(qiáng)大的客戶端工具。筆者曾經(jīng)見(jiàn)到過(guò)?Microsoft?演示新加坡政府的電子政務(wù)系統(tǒng),就是將許多客戶端的功能置入?MSN?Messenger?的標(biāo)簽中,為工作人員提供了一個(gè)使用極其方便的工具。?



          (注:默認(rèn)情況下,MSN?Messenger?標(biāo)簽只有兩個(gè),要想顯示全部?jī)?nèi)置標(biāo)簽,用戶需要在?www.passport.net?登錄,并在Member?Services?中修改?Profile?文件,將自己的?Country/Region?修改為美國(guó),或者直接下載此文件:?::URL::http://www.china-actuary.com/temp/configcache.zip ?,解開后覆蓋原配置文件即可,原配置文件的路徑在下文列出)?




          如何增加標(biāo)簽?




          MSN?Messenger?中所有標(biāo)簽都是定義在一個(gè)?XML?配置文件中,這個(gè)文件位于?C:\Documents?and?Settings\[User]\Application?Data\Microsoft\MSN?Messenger\[Passport?ID]?目錄下,如果安裝的是?MSN?Messenger?6.0中文版,則可能位于?C:\Documents?and?Settings\[USER]\Application?Data\Microsoft\MSN?Messenger下面的目錄名是一串?dāng)?shù)字的子目錄中,文件名為?ConfigCache.xml(注:?[User]?是登錄?Windows?系統(tǒng)的用戶名,Passport?ID?是指登錄?MSN?Messenger?的ID,如?muslem@msn.com,另外,如果你的?Windows?系統(tǒng)安裝在?C:?以外的其它驅(qū)動(dòng)器,則上述路徑要做相應(yīng)改變)。


          打開這個(gè)?XML?文件,就可以看到在?\MsgrConfig\TabConfig\msntabdata?節(jié)點(diǎn)內(nèi)就是所有標(biāo)簽的定義,現(xiàn)舉例對(duì)其中的主要元素加以說(shuō)明:?



          <tab>
          ??<image>res:moneyimage>
          ??<name>CNBC?on?MSN?Moneyname>
          ??<tooltip>CNBC?on?MSN?Moneytooltip>
          ??<contenturl>::URL::http://moneycentral.msn.com/messenger/tab.aspxcontenturl>
          </tab>?




          了解了標(biāo)簽的定義方式后,我們就可以定義自己的標(biāo)簽了,考慮到?MSN?Messenger?窗口的大小和?PocketPC?或?Palm?等PDA?類似,所以適合?PDA?的網(wǎng)站置入到標(biāo)簽中比較合適。例如我們把新浪站點(diǎn)的?PDA版(::URL::http://pda.sina.com.cn)做成一個(gè)標(biāo)簽,則應(yīng)定義如下一個(gè) ?XML?結(jié)點(diǎn):


          <tab>
          ???<image>res:bellimage>
          ???<name>SINA?PDAname>
          ???<tooltip>SINA?PDA?Sitetooltip>
          ???<contenturl>::URL::http://pda.sina.com.cncontenturl>
          </tab>




          然后將結(jié)點(diǎn)定義的全部文本插入到配置文件的?\MsgrConfig\TabConfig\msntabdata?節(jié)點(diǎn)里面,注銷并重新登錄?MSN?Messenger?,則效果圖2所示。

          除此之外,在?PDA?上很受歡迎的?AvantGO?頻道都可以作為標(biāo)簽內(nèi)容的來(lái)源,在?::URL::http://www.avantgo.com ?中注冊(cè)登錄后,會(huì)列出各種各樣的頻道及其?URL?地址,然后就可以自己的需要選擇利用了。


          如何開發(fā)標(biāo)簽




          除了引用已有的站點(diǎn),如AvantGO頻道或PDA站點(diǎn)外,能不能制做自己的功能標(biāo)簽?zāi)兀看鸢甘峭耆隙ǖ模梢钥吹剑瑯?biāo)簽配置中的?ContentURL?既可以引用外部?URL?資源,也可以引用本地資源,最常用的就是引用本地的?HTML?文件。

          利用?HTML?文件,你的所有與?HTML?有關(guān)的開發(fā)技術(shù)/技巧都能派上用場(chǎng),如CSS、HTML?Component、VBScript/JavaScript、Java?Applet、DHTML,ActiveX,MSXML(包括XMLHttp組件),XSLT等。如果是開發(fā)一個(gè)內(nèi)容采集(如新聞或天氣預(yù)報(bào)信息抓取)的標(biāo)簽,則一般要經(jīng)過(guò)以下步驟:

          1、尋找內(nèi)容來(lái)源,此頁(yè)面一般要求格式相對(duì)固定,如新浪的滾動(dòng)新聞頁(yè)面等?



          2、利用?MSXML?包中的?XMLHttp?對(duì)象來(lái)獲取內(nèi)容?



          3、在本地利于腳本結(jié)合?HTML?DOM(文檔對(duì)象模型)技術(shù)對(duì)獲取的內(nèi)容進(jìn)行分析和過(guò)濾,取出有用內(nèi)容?



          4、以適合的方式顯示這些的內(nèi)容,并可以結(jié)合?CSS?進(jìn)行內(nèi)容的格式化?




          另外,如果引用本地的?HTML?文件,則腳本安全性級(jí)別較低,對(duì)本地文件系統(tǒng)進(jìn)行讀寫是允許的,因此開發(fā)一些具有高級(jí)特性的應(yīng)用,如本地緩存內(nèi)容,顯示本計(jì)算機(jī)的某些信息(如?Outlook?的郵件,聯(lián)系人列表等)。


          下圖是筆者開發(fā)的一個(gè)標(biāo)簽的實(shí)例,主要功能是查閱新聞、電視節(jié)目單、天氣預(yù)報(bào)等,可以從?::URL::http://www.china-actuary.com/temp/rordown.asp ?下載,通過(guò)閱讀里面的內(nèi)容和程序腳本來(lái)進(jìn)一步了解如何開發(fā)標(biāo)簽。


          除此之外,可以利于?Windows?系統(tǒng)和第三方豐富的組件和控件,嘗試進(jìn)行一些MSN?Messenger?標(biāo)簽的高級(jí)開發(fā),如利用?JMail?組件來(lái)讀取?POP3?郵箱的內(nèi)容或發(fā)送郵件;利用通訊網(wǎng)關(guān)發(fā)送手機(jī)短消息;利用?XML?解析器來(lái)讀取和顯示?RSS?內(nèi)容;甚至可以通過(guò)?MSXML?中的?XMLHTTP?來(lái)讀取?Hotmail/MSN?郵箱中的內(nèi)容,使用?ADO?來(lái)存取數(shù)據(jù)庫(kù)信息等,當(dāng)然開發(fā)人員也可以將此功能延伸到企業(yè)應(yīng)用開發(fā)中,如小組協(xié)作,日程安排等。


          開發(fā)標(biāo)簽注意事項(xiàng)




          1、圖標(biāo)的引用

          標(biāo)簽的圖標(biāo)即可以采用內(nèi)置的資源圖標(biāo),也可以引用外部(URL形式,如?::URL::http://www.china-actuary.com/temp/news.png)的 ?PNG?文件(必須是32位色),圖標(biāo)大小為?32X32,也可以使用?ResHacker?等工具將自己的圖標(biāo)加入到?MSN?Messenger?可執(zhí)行文件?MsnMsgr.exe?中,然后使用?res:[ID]?的方式來(lái)引用。?



          2、界面開發(fā)

          由于標(biāo)簽的內(nèi)容顯示在?MSN?Messenger?窗口的內(nèi)部,所以在界面開發(fā)時(shí)要注意以下原則:

          1)?標(biāo)簽中元素的采用相對(duì)大小,而非絕對(duì)大小。這樣當(dāng)?MSN?Messenger?窗口縮放的時(shí)候,里面的內(nèi)容能夠自適應(yīng)地進(jìn)行調(diào)整。此外如果可能,對(duì)超過(guò)窗口寬度的內(nèi)容進(jìn)行手工縮放(在筆者的例子里,對(duì)新聞中的圖片進(jìn)行了縮放,以便能夠在任意大小的窗口都看到全圖),從而避免出現(xiàn)水平滾動(dòng)條。

          2)?使用小字體,以顯示更多內(nèi)容

          3)?使用元素的邊框和間隔不要太大,不要采用較大的圖片按鈕

          4)?使用簡(jiǎn)單控件

          5)?盡量避免重新刷新整個(gè)頁(yè)面

          3、程序的開發(fā)與調(diào)試

          可以使用常用的?HTML/VBScript/Jscript?開發(fā)工具,結(jié)合?Internet?Explorere?進(jìn)行測(cè)試,測(cè)試無(wú)誤后再加入到?MSN?Messenger?的標(biāo)簽中,要不然每次更改頁(yè)面后都要重新登錄?MSN?Messenger?,無(wú)疑是一件很痛苦的事。?



          4、配置文件與標(biāo)簽圖標(biāo)

          經(jīng)常發(fā)現(xiàn)登錄?MSN?Messenger?后,除了最上面好友列表的標(biāo)簽外,其它標(biāo)簽到都不見(jiàn)了,此問(wèn)題一般都是錯(cuò)誤地修改?ConfigCache.xml?文件而使其成為一個(gè)不合法的?XML?文件導(dǎo)致的。所以在修改此文件后,最好使用?Internet?Explorer?打開查看一下,以確認(rèn)?XML?文件的格式無(wú)誤。?



          另外,有時(shí)候即使不修改配置文件,標(biāo)簽也會(huì)“消失”,這是由于?MSN?Messenger?自動(dòng)更新配置文件而覆蓋和自定義的標(biāo)簽,要防止此類情況,最好將配置文件中的過(guò)期設(shè)置元素的值改為0,即:0。


          另外,msn?shell也可以實(shí)現(xiàn)此功能,而且功能更為強(qiáng)大



          原文地址:http://www.blogcn.com/user31/nhdj/blog/7190344.html
          posted on 2006-03-21 12:32 hopeshared 閱讀(499) 評(píng)論(0)  編輯  收藏 所屬分類: Java
          主站蜘蛛池模板: 蓝田县| 彰化县| 孝义市| 镇原县| 甘谷县| 砀山县| 天镇县| 京山县| 芦山县| 迭部县| 五峰| 庄河市| 浮梁县| 巨野县| 新营市| 大姚县| 定远县| 正定县| 伊吾县| 西盟| 二连浩特市| 泽普县| 儋州市| 杂多县| 蒙自县| 奉新县| 班玛县| 鸡西市| 富源县| 通辽市| 海南省| 台北县| 商丘市| 南木林县| 泰兴市| 申扎县| 洛川县| 西吉县| 辽阳市| 泰来县| 建德市|