在程式整合時,有時需要對廠家提供的dll或者ocx控制項進行註冊。其一般操作為:開始》命令指示符(右擊管理員身份執行)》regsvr32 檔案路徑。
比如對devocx.ocx進行註冊,在f:\公司專案\張家口\20110928_vskdm_v1r4b3sp2fix5資料夾裡。
regsvr32 f:\公司專案\張家口\20110928_vskdm_v1r4b3sp2fix5\devocx.ocx。
按照常理就能註冊成功,但是有時會報錯。
錯誤1、提示,找不到指定的模組或者dll依賴項。
解答:一般多是dll的依賴項缺少,所以此時到windows/system32查詢dll是否存在。
dll附加依賴項檢視——dumpbin
開始->所有程式->microsoft visual studio 2008 ->visual studio tools->visual studio 2008 命令提示
檢視程式或動態鏈結庫需要的動態鏈結庫
dumpbin /dependents d:\test.exe
檢視動態鏈結庫的輸出函式
dumpbin /exports d:\libmysql.dll
在這之後,再進行註冊,有時會出現:
1、win7 下註冊dll檔案失敗,提示模組「xx.dll」已載入,但找不到入口點dllregisterserver
原因:該dll檔案非可註冊元件,沒有包含dllregisterserver函式,可用depend.exe 檢視
2、win7 下註冊dll檔案失敗,提示模組「xx.dll」已載入,但對dllregisterserver的呼叫失敗,錯誤**為0x80020009
原因:win7的許可權問題,可用以下步驟解決。但win7下把dll放入system32檔案下,用下面方法行不通
開始--所有程式--附件--命令列--右鍵「以管理員身份執行」進入cmd方式,然後在cmd方式下進入要註冊dll所在資料夾中,再次使用regsvr32 /s xx.dll,就可以了
C 自動實現Dll OCX 控制項註冊的兩種方法
儘管ms為我們提供了豐富的.net framework庫,我們的程式c 開發帶來了極大的便利,但是有時候,一些特定功能的控制項庫還是需要由第三方提供或是自己編寫。當需要用到dll引用的時候,我們通常會通過 新增引用 的方式將它們納入到專案中,然後就可以像使用自己的類一樣方便的使用它們了。但是,有些d...
C 自動實現Dll OCX 控制項註冊的兩種方法
儘管ms為我們提供了豐富的.net framework庫,我們的程式c 開發帶來了極大的便利,但是有時候,一些特定功能的控制項庫還是需要由第三方提供或是自己編寫。當需要用到dll引用的時候,我們通常會通過 新增引用 的方式將它們納入到專案中,然後就可以像使用自己的類一樣方便的使用它們了。但是,有些d...
C 自動實現Dll OCX 控制項註冊的兩種方法
儘管ms為我們提供了豐富的.net framework庫,我們的程式c 開發帶來了極大的便利,但是有時候,一些特定功能的控制項庫還是需要由第三方提供或是自己編寫。當需要用到dll引用的時候,我們通常會通過 新增引用 的方式將它們納入到專案中,然後就可以像使用自己的類一樣方便的使用它們了。但是,有些d...