青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 126,  comments - 73,  trackbacks - 0

目的:

1.? 依賴 MFC 庫或 ATL 庫等開發的 ActiveX 控件要正常的運行必須依賴這些庫。但是你不能保證你用戶的機器上裝有與你開發環境相同的庫,所以,當你發行一個 ActiveX 控件,你必須要包證這些依賴庫的存在。

2.? 在網絡上運行的 ActiveX 控件,必須要保證你發行的控件小的足以讓用戶忍受下載的時間,當然是越小越好??丶旧砟銜l現微不足道,但你不得不還要考慮到他支持庫的空間,你會發現的加上它的支持庫,你的控件會變的臃腫不堪,所以你必須要找到一種方法為你的控件減減肥。

3.? 得到控件后,使用前當然還要給它注冊,但是你別忘了,還有他那些個依賴庫的注冊工作等著你耐心的一個個的 regsvr32 掉。

哦,天哪,用戶只是想隨便的瀏覽一個網頁而已卻要他做這么麻煩的工作,誰愿意做,我們上帝們才不會關心你這些技術細節,他們希望在電腦前輕點下鼠標就一切正常,他們要的是自動化!而這一切, Cab 能幫你完全解決。

原理:

通過高壓縮技術(比 ZIP 壓縮度還高 3 成)——打包成 Cab 壓縮文件。當用戶第一次瀏覽你控件所在的網頁時,它會自動提示控件下載,下載后會根據 cab 文件中的 *.inf 文本文件的來尋找你電腦的上相應的 DLL (控件依賴庫及控件本身, ocx 本就是一種特殊的 DLL )是否注冊過,如果沒有,會自動幫你注冊,然后控件既可以正常使用。

(注:關于 cab 壓縮技術,請參考 MSDN 或是網上相關搜索)

創建 cab 文件:

1.? 創建 INF 文件。

INF 文件是一個文本文件,用以指定為控件的運行而需要顯示或下載的文件(如 DLL 文件或其他 OCX 文件)。 INF 文件使您得以將所有所需的文件捆綁在一個壓縮的 CAB 文件中。默認情況下,版本號同用戶硬盤上的現有文件相同的文件不下載。有關 INF 文件及其選項的更多信息,包括如何創建與平臺無關的 INF 文件,請參見 Platform SDK 文檔中的關于 INF 文件和使用 INF 文件(在 MSDN Library/Setup System Administration/Setup/Setup API/Overview/Setup Applications 目錄下)。

舉例來說,下面的 INF 文件用于為 AxYourControl 控件創建 CAB 文件。 AxYourControl 是由某一庫支持開發的( MFC , ATL 或其他),假設他所支持庫的主要由 Need1.dll , Need2.dll , Need3.dll 三個 DLL 庫(具體有哪些庫文件根據情況查閱 MSDN 相關內容)。

; Sample INF file for AxYourControl.OCX

[version]

signature="$CHINA$"

AdvancedINF=2.0?

?

[Add.Code]

AxYourControl.ocx= AxYourControl.ocx

Need1.dll= Need1.dll

Need2.dll= Need2.dll

Need3.dll= Need3.dll

?

; needed DLL

[Need1.dll]

file-win32-x86=thiscab

FileVersion=2,00,0,7024

DestDir=11

RegisterServer=yes

?

; needed DLL

[Need2.dll]

file-win32-x86=thiscab

FileVersion=2,00,0,7024

DestDir=11

RegisterServer=yes

?

; needed DLL

[Need3.dll]

file-win32-x86=thiscab

FileVersion=2,00,0,7024

DestDir=11

RegisterServer=yes

?

[AxYourControl.ocx]

file-win32-x86=thiscab

clsid={4CBBC676-507F-11D0-B98B-000000000000}

FileVersion=1,0,0,1

RegisterServer=yes?

; end of INF file

INF 文件指定需要在系統上安裝給定版本的 Need1.DLL, Need2.DLLNeed3.DLL。如果這些DLL尚未存在于系統中,它將從用此 INF 創建的 CAB 文件中下載。“thiscab”是一個關鍵字,表示 CAB 包含此 INF。也可通過指定一條絕對或相對路徑,從一個 HTTP 位置下載所需的 DLL,例如:

				
						
								
										??? file-win32-x86=http://example.microsoft.com/mydir/NEEDED.DLL 
						
				
		

關鍵字“file-win32-x86”將平臺標識為 x86 特定的。

可通過在 Windows 資源管理器中的文件上單擊鼠標右鍵來獲取文件的版本號。從顯示的列表中選擇屬性,然后在顯示的對話框中選擇版本選項卡。有時需要在文件版本中額外插入一個 0。例如,在對話框中 ATL.DLL 的版本號顯示為 2.00.7024。而在 INF 文件中,這變為 2, 00, 0, 7024。

“DestDir” 是將要加載文件的目錄所在的位置:11 指定系統目錄為 WINDOWS/SYSTEM WINNT/SYSTEM32;10 指定 Windows 目錄、WINDOWS WINNT。如果未指定任何 DestDir(典型情況),則代碼安裝在固定的 OCCACHE 目錄中。

“clsid” 是將要安裝的控件的 CLSID

2.? 運行 CABARC 實用工具。

Cabarc.exe 是微軟的一個 cab 文件制作工具。你可以到微軟的官方網站下載 CABIN SDK 工具包。下載后解壓安裝,在其目錄下有一個 Bin 目錄下可以找到。

????? 應在包含源文件的目錄下運行 CABARC 。在命令行上,按源文件出現在 INF 中的順序排列它們,并將 INF 文件放在最后。例如,若要從上面的 INF 文件生成 AxYourControl 控件的 CAB 文件,請使用下面的命令:

…\BIN\CABARC -s 6144 n AxYourControl .CAB Need1 .DLL Need2 .DLL Need3 .DLL AxYourControl .OCX AxYourControl .INF

-s 選項在壓縮文件中保留 用于代碼簽名 的空間。 n 命令指定希望創建 CAB 文件。有關 CABARC 命令和選項的列表,請在命令行上僅鍵入 CABARC

…\BIN\ CABARC

其他的一些補充:

1.? 需要 MFC 控件中包含的 DLL 文件有 MSVCRT.DLL MFC42.DLL OLEPRO32.DLL ,其中 MFC42.DLL 視你開發環境的 MFC 版本所定,例如本人是在 vc7 環境下開發控件的,所以,應該為 MFC71.DLL

2.? ActiveX 空間創建 cab 文件還有一個重要的話題就是 將其打包為簽名壓縮 (CAB) 文件。簽名文件使用戶可以放心地下載代碼安全的控件。關于這個話題,需要申請發行證書,詳細情況可參見 MSDN

ms-help://MS.MSDNQTR.2003FEB.2052/vccore/html/Creating_Signed_CAB_Files_for_MFC_and_ATL_Controls.htm

3.? 關于在創建 INF DLL 的版本,你可以鼠標右擊點出他的屬性對話框,在版本一欄就可以看到了,注意,填寫時,版本號之間的“ . ”號變換為“,”。

posted on 2007-01-08 17:12 我風 閱讀(862) 評論(0)  編輯 收藏 引用

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


<2007年7月>
24252627282930
1234567
891011121314
15161718192021
22232425262728
2930311234

常用鏈接

留言簿(12)

隨筆分類

隨筆檔案

文章檔案

相冊

收藏夾

C++

MyFavorite

搜索

  •  

積分與排名

  • 積分 - 329008
  • 排名 - 75

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲欧美久久久| 亚洲黄色免费网站| 国产欧美激情| 亚洲免费激情| 亚洲高清久久久| 性欧美xxxx大乳国产app| 欧美久久视频| 亚洲美女在线一区| 亚洲国产精品电影| 麻豆成人综合网| 91久久精品国产91久久| 免费欧美电影| 久久香蕉国产线看观看av| 国产亚洲人成网站在线观看| 亚洲欧美综合精品久久成人| 夜夜爽av福利精品导航 | 毛片av中文字幕一区二区| 国产一区二区三区久久久| 欧美中文字幕| 久久高清免费观看| 精品成人国产在线观看男人呻吟| 久久久国产成人精品| 欧美影院视频| 精品成人一区二区| 欧美激情乱人伦| 久久久亚洲综合| 久久国产精品一区二区三区| 国产亚洲一级高清| 狼人社综合社区| 欧美韩日一区二区| 亚洲一区二区视频在线| 亚洲欧美日本精品| 经典三级久久| 亚洲精品日产精品乱码不卡| 国产精品成人一区| 久久国产精品99国产| 乱人伦精品视频在线观看| 亚洲美女免费视频| 亚洲欧美日韩中文播放| 亚洲承认在线| 在线视频你懂得一区| 国产日韩在线不卡| 亚洲国产日韩欧美在线动漫| 欧美日韩综合另类| 久久久久久久久久看片| 欧美精品一区二区三区在线看午夜 | 亚洲精品美女在线观看| 国产精品午夜国产小视频| 久久综合久久综合久久| 欧美激情1区2区3区| 性欧美在线看片a免费观看| 久久精品欧美日韩精品| 一区二区三区欧美亚洲| 欧美综合激情网| 亚洲视频精品在线| 乱码第一页成人| 久久成人精品一区二区三区| 欧美精品v日韩精品v国产精品| 久久国产手机看片| 欧美日韩在线不卡一区| 欧美成人午夜激情视频| 国产精品丝袜xxxxxxx| 亚洲国产激情| 好吊妞**欧美| 午夜精品一区二区三区在线| 99视频一区二区| 久久色中文字幕| 久久www成人_看片免费不卡| 欧美日韩精品一区二区三区| 欧美大片免费观看| 韩国av一区二区三区四区| 一区二区三区四区在线| 亚洲美女免费精品视频在线观看| 久久久久久久尹人综合网亚洲 | 久久久精品国产免费观看同学| 欧美日韩精品二区第二页| 欧美插天视频在线播放| 国产亚洲欧美在线| 亚洲综合色在线| 亚洲男人第一av网站| 欧美日韩在线综合| 亚洲国产欧美一区二区三区久久| 永久91嫩草亚洲精品人人| 欧美一区二区大片| 国产婷婷色一区二区三区在线| 日韩一二三在线视频播| 99热在这里有精品免费| 欧美成人精品影院| 亚洲国产精品t66y| 亚洲美女在线视频| 欧美精品久久久久久| 亚洲国产美女| 亚洲精品国产精品久久清纯直播 | 亚洲精品一区二区三区av| 在线日韩电影| 麻豆精品91| 亚洲高清毛片| 中国女人久久久| 国产精品久久久久久久久搜平片| 一区二区三区国产在线观看| 亚洲一区二区三区色| 国产精品欧美久久| 欧美一区二区福利在线| 女女同性女同一区二区三区91| 悠悠资源网亚洲青| 欧美激情亚洲激情| 一本色道久久| 久久国产精品久久久久久电车| 国产视频在线观看一区| 久久久99爱| 亚洲欧洲精品一区二区三区| 在线综合视频| 国产精品久久久久国产a级| 亚洲欧美精品在线| 麻豆精品网站| 日韩亚洲综合在线| 国产精品美女www爽爽爽| 欧美在线一二三区| 91久久在线| 欧美一二三区精品| 在线精品亚洲| 欧美午夜在线观看| 久久国产加勒比精品无码| 欧美大片免费久久精品三p | 午夜精品福利视频| 欧美成人第一页| 亚洲一区欧美激情| 国产综合自拍| 欧美精品精品一区| 性欧美videos另类喷潮| 91久久中文字幕| 欧美在线免费观看视频| 亚洲欧洲日产国码二区| 国产精品久久久久久久久婷婷| 久久久精彩视频| 一本大道久久精品懂色aⅴ| 久久免费99精品久久久久久| 亚洲免费精彩视频| 国产专区综合网| 欧美日韩国产不卡在线看| 久久精品国产亚洲aⅴ| 夜夜嗨av色一区二区不卡| 欧美成人伊人久久综合网| 亚洲欧美日本视频在线观看| 亚洲国产日韩一区二区| 国产日韩欧美二区| 欧美深夜福利| 欧美激情第8页| 久久久亚洲国产天美传媒修理工| 9久re热视频在线精品| 欧美高清在线一区| 亚洲电影在线| 国产美女一区| 国产精品久久久999| 欧美啪啪一区| 欧美国产日韩a欧美在线观看| 久久精品人人做人人爽| 午夜精品国产| 亚洲欧美欧美一区二区三区| 亚洲精品久久久久久下一站| 欧美1区免费| 美女主播精品视频一二三四| 久久精品国产亚洲高清剧情介绍| 亚洲一区精品在线| 亚洲一区二区三区在线视频| 亚洲精品女av网站| 亚洲区国产区| 亚洲精品永久免费| 亚洲理论电影网| 亚洲美女中出| 一本色道久久综合亚洲精品不| 亚洲精品一区二区三区樱花| 亚洲国产一区二区三区在线播 | 亚洲一区区二区| 一区二区国产精品| 一本色道久久综合亚洲精品高清| 亚洲人成久久| 日韩小视频在线观看专区| 亚洲区免费影片| 99在线热播精品免费99热| 亚洲激情啪啪| 日韩香蕉视频| 亚洲永久视频| 久久国产精品久久w女人spa| 欧美在线观看www| 久久久夜色精品亚洲| 免费亚洲婷婷| 亚洲美女尤物影院| 亚洲综合色在线| 久久av一区二区三区漫画| 久久久久9999亚洲精品| 久久综合99re88久久爱| 麻豆精品视频在线观看| 欧美黄网免费在线观看| 欧美日韩国产综合视频在线观看 | 亚洲在线视频网站| 久久精品国产久精国产爱| 老鸭窝毛片一区二区三区| 亚洲国产精品一区二区第四页av| 亚洲老司机av|