激情综合丁香-激情综合六月-激情综合婷婷亚洲图片-激情综合图区-激情综合网五月

ARM9工控板在遠程監(jiān)控中的應用之一——利用COM組件遠程更改設備配置文件

 2009-6-2              

        COM(Component Object Model),即組件對象模型,是微軟公司開發(fā)的一種新的軟件開發(fā)技術(shù),Microsoft的許多技術(shù),如ActiveX、DirectX、以及OLE等都是基于COM而建立起來的。COM標準包括規(guī)范和實現(xiàn)兩大部分,規(guī)范部分定義了組件和組件之間通信的機制,這些規(guī)范不依賴于任何特定的語言和操作系統(tǒng),只要按照該規(guī)范,任何語言都可以使用; COM標準的實現(xiàn)部分是COM庫,COM庫為COM規(guī)范的具體實現(xiàn)提供了一些核心服務。

 

        在COM模型中,對象本身對于客戶來說是不可見的,客戶請求服務時,只能通過接口進行。每一個接口都由一個128位的全局唯一標識符(GUID,Globally Unique Identifier)來標識。客戶通過GUID獲得接口的指針,再通過接口指針客戶就可以調(diào)用其相應的成員函數(shù)。對象可以支持多個接口,因此對組件對象的升級可通過增加接口的辦法實現(xiàn),這樣得到的新接口可以不影響老接口的使用。

 

        COM既提出了組件之間進行交互的規(guī)范,也提供了實現(xiàn)交互的環(huán)境, 因為組件對象之間交互的規(guī)范不依賴于任何特定的語言,所以COM也可以是不同語言協(xié)作開發(fā)的一種標準。

 

        有了這種跨語言設計的方法,我們就可以通過動態(tài)網(wǎng)頁技術(shù),也就是嵌入式主板提供的WebServer功能,利用VBScript或者JavaScript使用COM提供的接口方法,完成遠程監(jiān)控和遠程控制功能。這樣,在英創(chuàng)嵌入式主板上接上攝像頭,就可以通過Client端瀏覽器進行遠程監(jiān)控。更有意義的是通過這種方式,還能實現(xiàn)遠程控制。比如,通過Client端瀏覽器的按鈕,可以實現(xiàn)IO控制,串口控制等。利用這種跨平臺的方法,我們還可以把EVC做的工作,做成COM組件,那么像VB、C#、LaberView等就可以實現(xiàn)直接調(diào)用,增加了團隊合作的效率。

 

        通過ASP使用FileSystemObject對象可以對服務器中的文件進行遠程操作,然而,WinCE WebServer沒有支持FileSystemObject對象,本文詳細介紹了通過編寫COM組件,完成了FileSystemObject的部分功能,這樣就實現(xiàn)了對嵌入式Web服務器的遠程文件操作。通過對英創(chuàng)嵌入式主板基本信息的設置,你可以了解COM組件的創(chuàng)建、注冊、調(diào)用等技術(shù),使你對COM組件技術(shù)有一定的認識。以下是操作的全過程。

 

1、建立COM組件

        1、新建EVC工程,選擇WCE ATL COM AppWizard,工程名字為Scripting。

 

        2、選擇支持MFC。

 

        3、通過ATL向?qū)砑咏涌?Insert->New ATL Objcet…,在該對話框中選擇Simple Object項添加一個COM對象,點擊Next按鈕來設置對象名和屬性。

 

 

        對象名Names選項卡中主要包括兩類輸入信息:C++信息和COM信息。在這里,為了保持和ASP中FileSystemObject對象名字一致,我們輸入名字FileSystemObject,其它信息會自動生成。

 

        在Attributes選項卡中,我們要設置COM對象的底層特征。由于在CE中,目前只支持Free模型,所以,必須選中這一項。其它選項意義請參考相應的書籍。

 

        4、為FileSystemObject對象添加接口方法。選中IFileSystemObject接口,右擊,在彈出的快捷菜單中選擇Add Method…項,為FileSystemObject對象添加接口方法。

 

        5、為接口添加方法的對話框界面,只需在Method Name輸入框中輸入FileExists,在Parameters輸入框中輸入 [in]VARIANT v1 ,[out, retval] long * pVal,然后點擊OK按鈕,即可添加一個FileExists方法。這里,要注意參數(shù)的數(shù)據(jù)類型,參數(shù)的數(shù)據(jù)類型可以參考http://www.vckbase.com/document/viewdoc/?id=1488。

 

        6、添加了FileExists方法后,就要添加FileExists方法實現(xiàn)代碼了。在ClassView選項卡中。雙擊FileExists,就可以在代碼窗口添加實現(xiàn)代碼了。具體代碼見EVC工程源碼。

 

        7、以同樣的方法,添加其它接口方法,完成FileSystemObject對象常用方法。詳見源碼。

 

2、注冊COM組件

        COM組件編寫并編譯為DLL文件,只有向系統(tǒng)注冊此組件后,其它語言才能夠調(diào)用。注冊的方法有兩種:

        1、用telnet登陸開發(fā)板,用regsvr32 Scripting.dll注冊

        2、在程序中注冊。具體方法請參考Regdll EVC工程源碼

 

3、在ASP中調(diào)用COM組件

        以VBScript為例,調(diào)用COM組件對象,完成對文件的操作。

 

        1、以為界的VBScript語言,是在Server端運行的語句,以作為開始結(jié)束標志的VBScript語言在Client端運行。所以,按“恢復默認值”按鈕后,調(diào)用的函數(shù)以為標識。

 

        2、如果要在Server端運行的VBScript語句在客戶端輸出提示信息,要用如下的方法:

 

        3、創(chuàng)建FSO對象,并讀寫文件。

 

        4、詳細網(wǎng)頁代碼請參考ASP源文件。

 

4、綜合測試

        至此,我們完成了COM組件的編寫和VBScript調(diào)用組件。我們提供了綜合例程。通過網(wǎng)頁配置Dbginfo.txt和Userinfo.txt兩個文件,具體步驟如下:

        1、把regdll.exe 和scripting.dll拷貝到Nandflash的根目錄下

        2、telnet登陸嵌入式主板,執(zhí)行regdll

        3、把DbgInfo文件夾下的所有文件拷貝到 \nandflash\www目錄下

        4、在瀏覽器中輸入嵌入式主板的ip地址/nand/config.asp就可以看到配置網(wǎng)頁。

主站蜘蛛池模板: 久久久久久免费一区二区三区| 色偷偷尼玛图亚洲综合| 久久一区二区三区精品| 亚洲一区二区三区在线网站 | 国产在线观看入口| 真人毛片免费拍拍拍aa视频| 国产精品美女一区二区| 美女被啪到深处喷水gif动态图视频| 亚洲日韩欧美综合| 97精品视频在线观看| 久久精品国产99国产精品| 中文字幕在亚洲第一在线| 成人黄色片网站| 欧美一级毛片免费高清aa| 国产一级片免费视频| 国产麻豆免费| 特a级毛片| 黄色录像一级毛片| 555夜色555亚洲夜色| 国产萝控精品福利视频免费| 久久一本色系列综合色| 日本三级成人中文字幕乱码| 亚洲精品国产网红在线| 中国国产高清一级毛片| 91久久香蕉青青草原娱乐| 一级aaaaaa毛片免费| 久久国产乱子伦精品免费一 | 亚洲欧洲日韩国产一区二区三区| 一区二区网站在线观看| 久久久999国产精品| 天海翼一区| 天天更新天天久久久更新影院| 日韩第1页| 日韩欧美日本| 国产在线视频二区| 国产精品久久久久久久| 视频在线二区| 国产精品视频福利| 国产精品xxx| 国产剧情第一页| 国产成人精品亚洲77美色|