BUG: Pass Database Object to 16-Bit OLE Server Causes 80010104Last reviewed: April 11, 1996Article ID: Q149033 |
The information in this article applies to:
SYMPTOMSAttempting to pass a DAO Database object to a 16-bit OLE server created with Visual Basic 4.0 16-bit can cause error -2147417852 (80010104) with early-binding, or run-time error 13 - Type Mismatch when using late- binding. This error is caused when the parameter list in the OLE server for the function or subroutine has an element declared As Database.
STATUSMicrosoft has confirmed this to be an issue in the Microsoft products listed at the beginning of this article. Microsoft is researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.
WORKAROUNDDeclare the element of the parameter list As Object instead of As Database. For example, instead of using
Public Sub PassDB(MyDB As Database)use:
Public Sub PassDB(MyDB As Object)All code in the body of the procedure or function that takes the database object can be written in the same way as if the parameter had been passed As database. Note that the As Database will work correctly with Visual Basic 4.0 32-bit and Jet 3.0.
MORE INFORMATIONFor additional information, please see the following articles in the Microsoft Knowledge Base:
ARTICLE-ID: Q129801 TITLE : How to Create and Use a Minimal OLE Automation Server Steps to Reproduce
|
KBCategory: kbprg kbbuglist
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |