在Delphi7中调试COM
開發COM 應用系統最令人頭痛的問題便是如何調試COM 組件了。由于COM 是執行在COM 的執行環境中,因此Delphi的程序員無法像Delphi的分布式多層應用系統一樣可以直接在Delphi的IDE中設定應用程序服務器的斷點來調試。
事實上,Delphi仍然可以在Delphi的集成開發環境中調試COM 組件,也可以讓程序員在集成開發環境中在COM 組件的程序單元中設定斷點,然后執行客戶端應用程序調用COM 組件。此時Delphi便會把執行控制權帶到Delphi的集成開發環境中,并且暫停在程序員設定的斷點上讓程序員開始調試。從此開始,程序員就可以像調試一般的應用程序一樣來調COM 組件了。不過要如此調試COM 組件,程序員必須先做一些設定。
<?xml:namespaceprefix=ons="urn:schemas-microsoft-com:office:office"/>
1、在Delphi的集成開發環境中激活要被調試的COM 組件項目,點Projects|Options菜單,在彈出的對話框中選擇Linker頁,選中其中的includeTd32info和includeremotedebugsymbol;
2、點Run|InstallCom Objects菜單,注冊COM 組件,最好是注冊到新的應用程序,也可以注冊到已有的應用程序(這個應用程序需要是由Delphi的注冊COM程序產生的)。
3、運行Win2000的控制面板|治理工具|組件服務,在COM 應用程序中找到剛才COM注冊的應用程序,點右鍵,選擇“屬性”菜單,在彈出的對話框中,選擇“高級”頁,選中其中的“在調試器中啟動”選項,在下面的調試路徑中會有類似如下的內容:"C:ProgramFilesBorlandDelphi7Binordbg70.exe"dllhost.exe/ProcessID:{9CEC476D-83A5-4C2B-AFF1-3E83A147B866}
4、回到Delphi的集成開發環境,點選Run|Parameters菜單,在對話框中,HostApplication設為:C:WINNTsystem32DLLHOST.EXE,(要根據你的操作系統安裝情況設定)。Parameters設為:/ProcessID:{9CEC476D-83A5-4C2B-AFF1-3E83A147B866};這個GUID的值要和Win2000組件服務中的屬性值一致,可以從那邊直接COPY過來。
5、設置斷點,在Delphi的集成開發環境中運行COM;
6、在Windows中(或新開的Delphi環境中)運行調用這個COM的客戶端程序。
這時會發現,Delphi開發環境中的COM停在斷點處了,就可以接下來單步跟蹤調試了。
轉載于:https://www.cnblogs.com/spiritofcloud/p/3976165.html
總結
以上是生活随笔為你收集整理的在Delphi7中调试COM的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 安卓学习第37课——DatePicker
- 下一篇: 自变量的变换