com組件注冊
A. 求c#自動注冊com組件源碼......
一直都是手動的,這段代碼應該沒辦法注冊.net的組件
B. COM組件注冊問題
這個可能是注冊用的regasm.exe位數和操作系統不一致,或者注冊表對應許可權不對。
C. 怎麼注冊office com組件
在COM標准中,一個組件程序也被稱為一個模塊,它可以是一個動態連接庫(DLL), 被稱為進專程內組件(in-of-process component)也可以是一屬個可執行程序(EXE),被稱為進程外組件(out-of-process component).
COM對象是建立在二進制可執行代碼級的基礎上,而C++等語言中的對象是建立在源代碼級基礎上的,因此COM對象是語言無關的。這一特性使用不同編程語言開發的組件對象進行交互成為可能。
在Microsoft Windows系統平台上,COM技術被應用於系統的各個層次,從底層的COM對象管理到上層的應用程序交互都用到了COM標准。
D. 如何查看計算機上已注冊的com組件
1、查注冊表;
2、控制面板裡面com和dcom管理;
3、藉助其他軟體工具。
E. 注冊C# 生成的COM組件
要想用.NET開發組件動態鏈接庫,並將類和資源公開以服務於其他任何編程語言,需要在項目中做以下設置:
1、創建一個類庫項目/解決方案(此例TestCom),打開項目屬性
2、選擇「應用程序」選項卡,點擊「程序集信息」按鈕以打開程序集信息對話框
此處也可維護程序集名稱和命名空間
3、在程序集對話框中勾選「使程序集COM可見」,然後確定。
此處也可維護項目版本信息和GUID,當GUID有沖突時可以通過VS的「工具」菜單中點擊「創建GUID」來獲取,一般為默認。
4、選擇「生成」選項卡,勾選「為COM互操作注冊」。
如需要同時將注釋與DLL一起分享出去,以方便其他程序員了解你的DLL介面和說明,則勾選「XML文檔文件」,如此生成項目時會將項目中所有注釋生成一個XML文檔。
需要注意的是,該配置是獨立的,也可以將配置項設置為「所有配置」。
5、選擇「簽名」選項卡,勾選「為程序集簽名」,然後點擊新建,打開「創建強名稱密鑰「窗口。
6、維護密鑰文件名,然後確認。
如果需要防反編譯,則勾選密碼保護密鑰文件,然後設置密碼(不設置密碼不影響DLL注冊到系統)。
7、DLL注冊
每次編譯之後都要重新注冊一次,以更新注冊信息,VS2019在生成(編譯)項目之後會自動注冊,這點非常方便。而VS2010及以前的版本需要手工操縱(其他版本沒用過)。
VS2010注冊步驟:
為了方便操作,搜索到regasm.exe,將其復制到DLL所在文件夾,然後按WIN+R鍵後輸入CMD打開命令窗口,
用CD命令定位到DLL所在文件夾輸入以下命令:
Regasm<項目名稱>.dll/tlb:<項目名稱>.tlb/codebase
其中<項目名稱>替換為你的項目名稱,也可以將命令編輯到BAT文件,這樣每次編譯之後執行bat即可。
到此為止大功告成,VBA中或其他編程環境就可以調用C#開發的組件對象了。
8、編寫類和介面代碼
要讓組件中的所有需要公開的資源可見,必須為其創建介面。見圖例
示例中定義了一個Class1的類,該類只有一個方法Link,用於拼接字元串,為了公開此類和方法,必須再定義一個介面。
(定義介面時有個簡單的方法,當你調試好類代碼之後,復制整個類代碼,然後將Class關鍵詞改為interface,然後去掉所有方法的修飾詞public以及實體代碼並補一個分號。)
最後生成完成編譯,編譯之後需要注冊以更新(VS2019會自動注冊)。
這里要說明的是,幾番測試發現,VS2019中不定義介面也能調用,只是無法使用點操作符顯示方法/屬性列表。
9、ExcelVBA中調用組件。
按alt+F11打開你的VBA項目,然後從菜單中打開引用,滾動到TestCom(或者是你的組件名)並勾選,如果沒找到回到VS檢查項目屬性是否設置正確。
10、在模塊中調用類庫。
懶得編輯插圖了,見我的博客園文章
C#組件項目設置與開發應用範例
F. 怎樣在安裝程序中注冊COM組件和非託管的DLL
建議使用騰訊電腦管家
騰訊電腦管家電腦診所針對commom.dll、MSVC**.dll、d3dx**.dll等常見的dll文件丟失問題,推出了專一鍵修復功能。在屬網上下載安裝騰訊電腦管家8.0版本後,打開程序,點擊右上角「電腦診所——軟體問題——丟失dll文件」,進入dll一鍵修復區,找到相應要修復的dll選項,點擊「立即修復」即可恢復正常。十分方便,建議試試。
G. 怎麼查看windows有沒有注冊某個COM組件
個是組件,一個是程序,你說呢。
程序一般可以獨立運行,
而組建必須注冊後,(即附屬性的)才可以搭建成功,然後運行。
H. 如何注冊COM組件,win7系統
其實這個問題涉及到COM++ Event System(COM++事件系統服務)方法:我的電腦---管理---服務---找到 COM++ event system ----雙擊---啟動類型---自動---應用---完成後,再點擊啟動。確定退出。說明:Event System(COM+事件系統服務)的進程名是Svchost.exe,WinXP Home/Pro默認安裝的啟動類型為手動,依賴於Remote Procere Call服務。對於非軟體開發專業的朋友來說,COM+是個非常難理解的名詞。簡單地說COM+是一種軟體構件/組件的標准。比如寫一個軟體好比是蓋一座房子,而門窗等部件會根據標准設計,以求得省時省力。COM組件即是Windows的門窗等標准組件了,COM+是對COM的進一步擴展,其具體含義在此就不詳細介紹了。Windows系統又是個典型的消息(事件)處理型系統,很多功能都是由消息來觸發的,這就產生了COM+ Event System。我們要學習的是如何簡單判斷自己的系統中是否有程序依靠此服務。 COMSysApp(COM+系統應用服務)的進程名是Dllhost.exe,WinXP Home/Pro默認安裝的啟動類型為手動,依賴於7Remote Procere Call服務。簡單地說,COM+ System Application是COM+ Event System的具體執行者,如果禁用了COM+ Event System也就自然禁用它。 而無線網路正依靠這些服務,包括Remote Procere Call (RPC)。如果COM+ Event System服務無法啟動,則說明沒有找到COMRes.dll應用程序,提示:"沒有找到COMRes.dll,應用程序未啟動"。解決方法:1. 下載COMRes.dll文件,復制到C:\windows\system32\目錄下。2. 下載360FileKiller.rar文件,對電腦頑固木馬進行專殺。
I. 如何解決win10因為許可權問題無法注冊com組件
1、首來先確保你的WIN10是管理員自許可權 2、下載comdlg32.ocx等控制項,網上可搜到 3、把comdlg32.ocx放到c:\Windows\SysWOW64,註:需要管理員許可權 4、開始-程序-附件-命令提示符,右鍵點擊,管理員身份運行 5、regsvr32 c:\Windows\SysWOW64\comdlg32.ocx(相應控制項名) 提示DllRegisterServer in C:\WINDOWS\SysWOW64\comdlg32.ocx succeeded 即表示控制項注冊成功
J. 經常看到com組件的注冊問題,我想問,為什麼com組件需要被注冊
一個是組件,一個是程序,你說呢。程序一般可以獨立運行,而組建必須注冊後,(即附屬性的)才可以搭建成功,然後運行。