DOCUMENT:Q177394 27-FEB-2002 [vbwin] TITLE :HOWTO: Troubleshoot Run-Time Error '429' in DCOM Applications PRODUCT :Microsoft Visual Basic for Windows PROD/VER::5.0,6.0 OPER/SYS: KEYWORDS:kbtophit kbDCOM kbVBp500 kbVBp600 kbGrpDSVB ====================================================================== ------------------------------------------------------------------------------- The information in this article applies to: - Microsoft Visual Basic Professional Edition for Windows, versions 5.0, 6.0 - Microsoft Visual Basic Enterprise Edition for Windows, versions 5.0, 6.0 ------------------------------------------------------------------------------- SUMMARY ======= Attempting to access a DCOM Server from a remote client application sometimes results in the following error: Run-time error '429': ActiveX component can't create object This article describes the most common scenarios in which this error is raised. MORE INFORMATION ================ The following is a list of possible causes of Run-time error 429. It is by no means a complete or definitive list. For additional troubleshooting steps, see the following article in the Microsoft Knowledge Base: Q269330 HOWTO: Troubleshoot DCOM for Visual Basic Client/Server Applications Problem with Server Run Location -------------------------------- This scenario applies to Microsoft Windows 2000, Windows NT, Windows 95, Windows 98, and Windows Me servers. 1. On the Server machine, run the DCOM Config utility (Dcomcnfg.exe). 2. Select the DCOM Server from the Applications tab and choose the Properties button. 3. Select the Location tab. 4. Ensure that the Run application on this computer setting is checked. Incorrect Server Specified in Client Registry --------------------------------------------- On the client machine, use the following steps to verify that the DCOM Server machine is properly delegated. This scenario applies to Windows 2000, Windows NT, Windows 95, Windows 98, and Windows Me clients. 1. On the client machine, run the DCOM Config utility (Dcomcnfg.exe). 2. Select the DCOM Server from the Applications tab and choose Properties. 3. On the General tab, be sure that there is an entry for Remote Computer and that the remote computer name is correct. 4. If the computer name is incorrect, select the Location tab. 5. Ensure the Run application on the following computer setting is checked. In the dialog box beneath this selection, type in the correct computer name for your DCOM Server. You can also use the following steps to verify the remote computer name by using the Windows Registry: 1. Run RegEdit.exe. 2. The remote server name is specified in the following registry key: HKEY_CLASSES_ROOT\ APPID\ {The CLSID of the DCOM Server}\ RemoteServerName Enable Remote Connections is Disabled ------------------------------------- On Windows 95, Windows 98, and Windows Me servers only, you must be sure remote connections are enabled in order for a remote application to get access to and execute a serving application. Use one of the following series of steps to perform this task: Series 1: 1. Run DCOM Config (Dcomcnfg.exe). 2. Select the Default Security tab. 3. Select the Enable remote connection check box. Series 2: 1. Run RegEdit.exe. 2. Locate the following registry key: HKEY_LOCAL_MACHINE\ Software\ Microsoft\ OLE\ EnableRemoteConnect 3. Ensure the EnableRemoteConnect value is set to "Y" for Yes. Remote Component not Started ---------------------------- On Windows 95, Windows 98, and Windows Me servers only, the DCOM Server application must be started before a remote client can access it. DCOM Server applications on Windows NT and Windows 2000 servers do not have this limitation. Binary Compatibility is Broken ------------------------------ 1. Open the DCOM Server project. 2. From the Project menu, choose the project Properties. 3. On the Component tab, ensure that Binary Compatibility is selected. If Binary Compatibility is not set, a new GUID (a.k.a ClassID) is not created each time the DCOM Server project is compiled. If you do not recompile the Client application after a new GUID is assigned, the DCOM clients break. Use the following steps to resolve this issue: 1. Set the DCOM Server project to Binary Compatibility. 2. Recompile both the Server and Client application. In the future, if you make any interface changes to your DCOM Server that might break compatibility, the Visual Basic compiler warns you that the component is no longer binary compatible. If you proceed to compile the DCOM Server, thus breaking compatibility, you must recompile any client applications that refer to that server. For more information about compatibility see the REFERENCES section below. REFERENCES ========== For additional information, please click the article numbers below to view the articles in the Microsoft Knowledge Base: Q161137 HOWTO: Use Project and Binary Compatibility Q176799 INFO: Using DCOM Config (DCOMCNFG) on Windows NT Q193143 BUG: DCOM Client Hangs and Then Gives Error 429 Q266717 HOWTO: Create a DCOM Client/Server Application by Using Visual Basic Q267836 HOWTO: Create a DCOM Client/Server with Events by Using Visual Basic Q268550 HOWTO: Use Dcomcnfg for a Visual Basic DCOM Client/Server Application Q269330 HOWTO: Troubleshoot DCOM for Visual Basic Client/Server Applications For more information, refer to the following book: Ted Pattison Programming Distributed Applications with COM+ and Microsoft Visual Basic 6.0, Second Edition (http://www.microsoft.com/redirect.asp?PageID=159&PARAM=BOKPSS60&TARGET=http://www1.fatbrain.com/asp/bookinfo/bookinfo.asp?theisbn=073561010X%2526p=netskills%2526s=69196) Microsoft Press, 2001 Additional query words: ====================================================================== Keywords : kbtophit kbDCOM kbVBp500 kbVBp600 kbGrpDSVB Technology : kbVBSearch kbAudDeveloper kbZNotKeyword6 kbZNotKeyword2 kbVB500Search kbVB600Search kbVB500 kbVB600 Version : :5.0,6.0 Issue type : kbhowto ============================================================================= 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. Copyright Microsoft Corporation 2002.