[正文]
這個東西在msdn中有詳細的過程(e文),天極網上的這一篇俺覺得是msdn的翻譯(
http://.yesky.***/20011220/210737.shtml),不過我照著上面的步驟做,怎麼都沒有成功,還說數字簽名要錢(這不是要我的命嗎),然後在找啊找,終於讓我找到了簡單一點的辦法。
下面是建立簽署cab檔案的步驟 :
1 獲得乙個軟體出版商證明書 (您只需要這一次申請就可以永久使用)
2 建立 cab 檔案
3 簽署您的檔案
4 將簽署過的 cab檔案嵌入乙個web頁(可選項)獲得乙個軟體出版商證明書
步驟1.數字證書
大家可以在
.ca365.***中申請乙個免費的,可以使用乙個月的樣子吧,具體怎麼操作,大家可以檢視該**的使用說明。
步驟2建立你cab檔案
這裡面最重要的就是製作inf檔案了。
我按照msdn上的製作出來後沒走作用,不知道怎麼搞的。
以我開發的active控制項為例講講對於控制項的inf的製作。我做的控制項用到了4個檔案:display.dll,***m.dll , videocodec.dll 和 vstar.ocx
其中vstar.ocx呼叫其他三個dll來執行的。
注:;後面是注釋
inf檔案內容:
;start
[version]
signature=$chicago$;這部分固定不變
[destinationdirs]
dllsyscopy=11
ocxcopy=11;指明下面要操作兩個copy到的資料夾為系統資料夾(2000中有winnt/system32)
[defaultinstall]
copyfiles=dllsyscopy,ocxcopy;指明有兩部分檔案要copy
addreg=videoreg;在登錄檔中要新增的內容,控制項註冊用
[dllsyscopy]
***m.dll=***m.dll
display.dll=display.dll
videocodec.dll=videocodec.dll
[ocxcopy]
vstar.ocx=vstar.ocx
;下面的內容為控制項在登錄檔中,註冊有內容
;你可以先在本機上用regvr32命令註冊控制項。然後在regedit中得到其hkey_classes_root/clsid有關
;你控制項的註冊項(vstar)。下面拿第乙個為例子大家就清楚了。
;下面第一排表示 hkey_classes_root/clsid/ 分支下
;有乙個名稱為"預設",型別為"reg_sz",資料為"vstar property page"的表項。
[videoreg]
hkcr,clsid/,"",%reg_sz%,"vstar property page"
hkcr,clsid//inprocserver32,"",%reg_sz%,"%11%/vstar.ocx"
hkcr,clsid/,"",%reg_sz%,"vstar control"
hkcr,clsid//control,"",%reg_sz%
hkcr,clsid//implemented categories,"",%reg_sz%
hkcr,clsid//implemented categories/,"",%reg_sz%
hkcr,clsid//implemented categories/,"",%reg_sz%
hkcr,clsid//inprocserver32,"",%reg_sz%,"%11%/vstar.ocx"
hkcr,clsid//inprocserver32,"threadingmodel",%reg_sz%,"apartment"
hkcr,clsid//miscstatus,"",%reg_sz%,"0"
hkcr,clsid//miscstatus/1,"",%reg_sz%,"131473"
hkcr,clsid//progid,"",%reg_sz%,"vstar.vstarctrl.1"
hkcr,clsid//toolboxbitmap32,"",%reg_sz%,"%11%/vstar.ocx, 1"
hkcr,clsid//typelib,"",%reg_sz%,""
hkcr,clsid//version,"",%reg_sz%,"1.0"
;end
做好你的inf檔案後就可以開始打包了,把控制項程式和inf檔案放到乙個目錄下用wincab打上包就行,wincab使用比較簡單。
步驟三.簽署您的檔案
這一步是告訴使用你控制項的人,「這是我發布的控制項你可以相信我,如果出了什麼問題你可以找我」
在這一步中你可以使用"chinatcp 個人控制項數字簽名系統",它上面有很詳細的使用方法,這裡不做介紹。它也可以製作數字簽名,不過它的數字簽名沒有那麼詳細的資訊
步驟四.將簽署過的 cab檔案嵌入乙個web頁(可選項)獲得乙個軟體出版商證明書
後記:當ie中的安全級別設定為低時,控制項如果沒有數字簽名,也是能夠使用的。但每次執行時會跳出執行的指令碼不安全的提示。(如果想在**中遮蔽它,可以參見"
VC 中的ATL和 MFC有什麼區別
atl是activextemplatelibrary的縮寫,它是一套c 模板庫。使用atl能夠快速地開發出高效 簡潔的 同時對com元件的開發提供最大限度的 自動生成以及視覺化支援。為了方便使用,從microsoftvisualc 5.0版本開始,microsoft把atl整合到visualc 開發...
MFC 控制項中control和value的區別
最近學習vc,又被這個問題搞糊塗了,上網查了下,終於搞清楚了。control型變數是這個控制項所屬類的乙個例項 物件 可以通過這個變數來對該控制項進行一些設定。而value只是用來傳遞資料,不能對控制項進行其它的操作。control型變數可以獲得控制項的例項,通過這個變數,你可以操縱控制項 valu...
MFC的Dialog中為PPC建立選單 收藏
mfc的dialog中為ppc建立選單 收藏 1 在資源中新增選單,名稱比如為 idr menu1。2 在對話方塊的初始化函式中加入以下 shmenubarinfo mbi zeromemory mbi,sizeof shmenubarinfo mbi.cbsize sizeof shmenubar...