Answered my own question after a day of struggling with it. You have to use the syntax "Dim objNewObject As New clsObject.whatever". If you just try to declare it and then use the "CreateObject" function it fails everytime. It also fails if you just declare it and try to use the "Set objNewObject = New..." syntax. You have to create the object when you declare it. Basically, it's a quirk with VB, not how you create it in NetExpress (just use the wizard to create the class as an InProc server).