ACC97: Run-Time Error 429 Message Using Run-Time Application

ID: Q189366


The information in this article applies to:


SUMMARY

Moderate: Requires basic macro, coding, and interoperability skills.

If you install a Microsoft Access run-time application on a computer that has not previously had Microsoft Access installed, you may receive the following error message when running code:

Run-time error '429':
ActiveX component can't create object

This error message can also occur on a computer that has Microsoft Access installed if:
This error can occur when DAO calls are made without using the Application object DBEngine and the DAO Automation Server license key is unavailable. The Automation Server license key is used to verify that the application has authorization to use the server.


MORE INFORMATION

This error message does not imply that an ActiveX control is involved. In this case, DAO, an ActiveX component, can't create an object because the DAO Automation Server cannot be started.

When using the DAO server there are two ways the DAO license key can be provided for verification.

  1. An application, such as Microsoft Access, can place a license key in the registration database during installation. There are two conditions where the DAO license key is not written to the registry:

    1. During an Access run-time application installation.


    2. During a full installation of Microsoft Access, if DAO is not registered properly and you subsequently use Regsvr32.exe to register Dao350.dll.




  2. The client application can pass the license key to DAO when the call is made.

    When the application calls DAO through Visual Basic for Applications code, the client application, in this case Visual Basic for Applications, does not provide the DAO license key. For example, the following code
    
          Set dbs = OpenDatabase("<path>\<filename>") 

    would not provide the DAO license key because Access is using Visual Basic for Applications as the application.

    You can get Microsoft Access to provide its DAO license key by using DBEngine as the application in the Visual Basic for Applications call to DAO. For example, the following code
    
          Set dbs = DBEngine.OpenDatabase("<path>\<filename>") 

    would provide the DAO license key because Microsoft Access is explicitly referencing DBEngine, the DAO object.

    Although the Application object, DBEngine, need only be referenced the first time DAO is used, it is good programming practice to use the Application object any time you reference DAO functionality in code.


Additional query words: inf


Keywords          : kberrmsg kbdta MdlDao 
Version           : WINDOWS:97
Platform          : WINDOWS 
Issue type        : kbhowto 

Last Reviewed: April 13, 1999