|
-
Sep 6th, 2004, 06:09 PM
#1
CreateObject("Outlook.Application") - Error 429 ActiveX Component Can't Create Object
I'm trying to learn how to program with Outlook Express 6 using Visual Basic 5. The problem is with having these couple lines of code:
Option Explicit
Dim Outlook As Object
Sub Main()
Set Outlook = CreateObject("Outlook.Application")
End Sub
I get a Runtime Error 429: ActiveX Component Can't Create Object. Of course obviously my Outlook Express works fine. I've done some heavy duty research on how to solve this problem looking literally everywhere on the internet. Registering the MSIMN.EXE using DOS was one of the solutions. It didn't work. The registry looks like it might be the solution. Over in this key path (HKEY_CLASSES_ROOT\CLSID\{0006F03A-0000-0000-C000-000000000046}) where Outlook Express is supposed to be located, I noticed it was empty! It is supposed to have InprocHandler32, InprocServer32, LocalServer32, ProgID, Typelib, and VersionIndependentProgID. Both ProgID and VersionIndependentProgID are supposed to have "Outlook.Application" as a string value (REG_SZ) which is required for scripting when you want ActiveX components to create the object for you. I can try typing the values by hand which probably won't work but is there anything else I can use to automatically fill these registry values in without screwing up Outlook Express 6? Possibly a program that registers it and fills in the registry keys for me?
Also, if you don't have the exact solution, I would at least like to know what value you have under HKEY_CLASSES_ROOT\CLSID\{0006F03A-0000-0000-C000-000000000046}\InprocServer32 since the other computer in my house (which isn't mine) has a value of some dll from McAfee, and McAfee is what I don't have.
Last edited by Jacob Roman; Sep 6th, 2004 at 06:31 PM.
-
Sep 6th, 2004, 07:34 PM
#2
Hyperactive Member
First off, have you referenced Outlook in your project, if not,
then RobDog888 could definitely help you on this one, as he is our VB/Outlook GURU here...
-
Sep 6th, 2004, 07:44 PM
#3
That's another thing. In the reference library, there are no references to Outlook Express. No ocx's or olb's. It is however running on these dlls which I got from the help menu in About Microsoft Outlook Express:
acctres.dll
comctl32.dll
csapi3t1.dll
directdb.dll
inetcomm.dll
inetres.dll
mapi32.dll
mshtml.dll
msident.dll
msoe.dll
msoeacct.dll
msoeres.dll
msoert2.dll
oeimport.dll
ole32.dll
riched20.dll
riched32.dll
wab32.dll
wab32res.dll
wldap32.dll
I have to admit, I would hate to add all of these to the reference library. Oh, and my theory of typing the missing registry keys by hand based on the information from the other computer (which uses Outlook Express 9) didn't work. Probably because there's more than one keys round there in the registry which I saw on the other computer.
Last edited by Jacob Roman; Sep 6th, 2004 at 07:50 PM.
-
Sep 6th, 2004, 08:04 PM
#4
*sigh* -- Outlook.Application is for OUTLOOK, not Outlook Express. They are two different programs. Outlook (part of Office) can be controled via automation, but AFAIK OE cannot, as it doesn't have an object model built in. That's why you get the error, and that's why it isn't possible to reference it from VB, and why the registry key was empty- it's the key for Outlook.
TG
-
Sep 6th, 2004, 10:08 PM
#5
No. They are the same program. But you may be right on everything else. The solution is out there, I'm just trying to figure it out. The only way you can create an object to use Outlook Express (besides references) is in fact CreateObject("Outlook.Application").
Last edited by Jacob Roman; Sep 6th, 2004 at 10:54 PM.
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|