COM技術雖然已經不被Microsoft推薦,我還是簡單記錄一下怎樣調試COM組件。
跟調試普通的dll差不多,有一點區別。
1. 創建COM組件
現在利用VS去創建COM組件是很容易的,可以利用C++/VC++ 或者C#,淡然C#去編寫COM組件還是比較少的,本例用VC++編寫。
2. 創建客戶端調用COM組件。
我們在創建COM組件之後,往往是爲了給第三方去調用的,這個時候客戶端沒有我們的code,只有我們的dll和使用說明。這時候第三方在調用COM組件的時候可能有特殊的case,需要我們去定位問題或者修改bug.
3. 調試COM組件
在第三方客戶端反饋給我們問題的時候,我們需要今天code 調試,通過下面方式進行簡單的調試,
3.1 編譯一個debug version COM組件,並進行註冊,
3.2 運行Client的application 或者自己編寫的模擬client,
3.3 利用VS 打開COM組件的Code,
3.4 attach COM project 到client(模擬),如果是C#要打開 support native debug.
這樣在客戶端在調用COM的時候就會進入code,可以進行調試。
如果是客戶端啓動時就需要調用COM, 則在VS裏面 在debug下面設置外部啓動程序,設置成client的路徑,然後直接F5啓動調試。
從以上的步驟看出,COM組件調試和普通的dll調試基本一致,除了註冊一步。