429 ActiveX error when running a VB6 app that calls a .Net (2.0 framework) dll from a Table PC running WinXP Pro SP2 Tablet PC edition
Posted on 2007-07-23
When I try to access a method from a com enabled .Net app from a VB6 program. I get Error 429 ActiveX component can't create object. This only occurs on a Table PC running WinXP Pro Table PC edition SP2.
I tried to isolate the problem by making the simplest program possible so I create VS2005 VB project that has one method. Here is the code I used:
<ComClass()> Public Class InteropTest
Public Function ShowDialog() As Boolean
MsgBox("Hello from .Net 2.0!")
I built the project and then created a VB6 standard EXE with a command button on the form and a reference set to the .Net dll. Here is the code for the VB6 project:
Private Sub Command1_Click()
Dim st As SimpleTest.InteropTest
Set st = New SimpleTest.InteropTest
That's as simple as it gets, right?
I then used Installshield to create the installation (I don't know how to get the tlb file registered properly without using Installshield). I tested this on several non-tablet pcs and the program works as expected. I click the button and I get a message box that says 'Hello from .Net 2.0!'
If I run this from the Table PC, I get the 429 error.
Any help would be greatly appreciated