BUG: Error '80080005' with 16-Bit Remote Automation Clients

Last reviewed: December 3, 1996
Article ID: Q142291
The information in this article applies to:
  • Enterprise Edition of Microsoft Visual Basic, 16-bit only, for Windows, version 4.0

SUMMARY

Accessing a property or method of a dependent and remotely served object from a 16-bit client may cause error '429' or error '-2146959355' (hex 80080005). This error occurs on machines on which remote automation was set up by installing Visual Basic 4.0, 16-bit. If the Setup Wizard is used to generate a setup program for the 16-bit client, the problem does not occur.

CAUSE

Visual Basic 4.0, 16-bit, does not register Autprx16.dll correctly during installation. This DLL is used by 16-bit clients running on 32-bit operating systems. Setup programs generated by the Setup Wizard perform the registration successfully. In addition, 16-bit clients running on a 16-bit operating system use Autprx.dll and do not have this problem, because the Visual Basic 4.0 installation correctly registers Autprx.dll.

STATUS

Microsoft has confirmed this to be a issue in the products listed above. We are researching the problem and will post more information in the Knowledge Base as it becomes available.

WORKAROUND

To enable dependent object access for 16-bit clients, manually register Autprx16.dll. The program Regsvr.exe, which is included with Visual Basic (in the Tools\PSS subdirectory), can be used to accomplish this.

To register the DLL, use this command line:

   regsvr.exe autprx16.dll

MORE INFORMATION

Steps To Reproduce

  1. Create and compile an OLE server that exposes an externally creatable object that contains dependent object(s). The Invoice server example that is outlined starting on page 32 of the Creating OLE Servers section of the Professional Features Guide demonstrates the problem.

  2. Create a client program that uses the OLE server written in step 1. The code at the bottom of page 34 of the Creating OLE Servers section creates a new Invoice object and executes code that will reproduce the problem.

  3. Remote your server by placing it on a separate machine and using the supplied tools (RacMan, CliReg) to configure your server and client for remote automation.

  4. Execute a line of code that accesses a property or method of a dependent object. The appropriate error detailed above will be displayed. Registering Autprx16.dll should fix the problem.


Additional reference words: 4.0 vb4win vb416
KBCategory: kbole kbbuglist
KBSubcategory: IAPOLE


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: December 3, 1996
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.