2010-01-27 126 views
2

我正在寫VB腳本,在其中我必須調用一個COM DLL的函數。我想要使​​用的功能在結構中,因此我想創建該結構的對象來訪問所需的功能。如何在vbscript中調用DLL函數

例如 我有一個dll 'BasicCom.dll',其中

struct abc 
{ 
    bool xyz(); 
} 

現在,我想打電話給XYZ()。有沒有人有任何想法,如何處理Vb腳本中的這種調用?

+1

COM DLL寫入的語言是什麼,你確定它的結構? COM沒有將機構視爲可能有方法的機制。 – AnthonyWJones 2010-01-27 12:26:06

+3

這根本不像一個COM函數。不支持在這樣的C++程序中調用函數。 – 2010-01-27 12:27:22

+0

我的COM DLL是用C++編寫的,其中聲明瞭C++結構和方法.. – amritad 2010-01-28 05:22:03

回答

-1

您應註冊爲COM +組件(運行REGSVR32 BasicCom.dll),並做到:

Set yourClass = CreateObject("BasicCom.Abc") ''// Should be ProjectName.ClassName 
returnValue = yourClass.xyz() 
+0

Regsvr32只是註冊COM組件。 COM +是不同的(除其他外)允許COM組件託管在另一個進程中。在這種情況下不需要COM +。 – AnthonyWJones 2010-01-27 12:22:47

2

漢斯的評論是正確的。這是純粹的C++方法,而不是COM類的方法。你不能從VBScript調用它。