2009-01-30 68 views
1

我有一個java庫,我通過COM在VB.NET中訪問。 java端的對象暴露了我需要調試的非平凡的.toString方法。不幸的是,當我在COM對象上調用.toString時,調用被Object類的.ToString函數攔截。解壓縮(?)/覆蓋.ToString訪問COM對象。toString

如何強制調用COM端.toString並防止Object.ToString被觸發?

回答

1

您是否有權訪問java對象的IDL? 您是否爲COM對象生成運行時可調用包裝器?

我認爲你應該改變互操作程序集或手動生成包裝器,以將toString()方法更改爲toStringJava()或to_String()或其他不與object.ToString()的語法衝突的其他東西。 Here's a starting point on MSDN for customizing runtime callable wrappers.

+0

我想你可能已經帶領我走上了這條正確的道路。對象沒有IDL,我無法訪問源代碼。我懷疑爲了做到這一點,我必須手動創建IDL/RCW,然後將其別名。 http://msdn.microsoft.com/en-us/library/x8fbsf00.aspx – 2009-02-02 19:22:25