我正在使用舊的VB6應用程序,並且最近添加了西門子OPC組件。在VB6調試器中運行時,我沒有問題。在VB6應用程序中導致「Method〜of object〜failed」的原因是什麼?
然後我創建了一個部署軟件包(包含在軟件包中的Siemens OPC dll),並將該應用程序部署在同一臺PC上。訪問OPC對象當我再收到以下錯誤信息:
「Method對象的~~失敗」
任何人都可以提出什麼可能導致這或我能做些什麼,以獲得更多的信息?
UPDATE 我意識到有關此錯誤消息的其他問題。令我困惑的是,使用VB調試器時沒有問題。部署後會發生問題 - 即使是在同一臺機器上。我會認爲所有組件都保持註冊並可用。
CODE
Public Sub InitialiseOPC(ServerIP As String, OpcServerName As String, BaseAddress As String)
On Error GoTo ProcError
IsInitialised = False
Set MyOpcServer = New OPCServer
Dim LocalServers
LocalServers = MyOpcServer.GetOPCServers(ServerIP)
....
當GetOPCServers被調用時發生錯誤。這是第一次訪問OPC組件。
有沒有什麼方法可以追蹤VB在這個時候正在做什麼(例如dll加載)?
UPDATE
我試圖部署西門子的dll到應用程序文件夾,而不是默認位置,但此錯誤信息不再出現。
對象'〜'失敗「的」方法'〜'是什麼意思?]的可能重複(http://stackoverflow.com/questions/1302026/what-does-method-of-object-failed-mean ) – 2012-01-11 07:33:04
@Cody Grey - 請參閱我的更新,瞭解「dups」無法幫助我的解釋 – paul 2012-01-11 07:45:37
如果您部署到沒有dll的「新鮮」機器,您會得到相同的結果嗎? – Jontatas 2012-01-11 07:53:07