masj78 Posted August 21, 2003 Posted August 21, 2003 Does any one know how to register dll's in Windows XP. I am not sure if this is possible, but I want to use the CDO 1.21 library (CDO.dll) to communicate with my copy of Outlook 2002. I have added it as a reference in my program but I am getting errors conserning CDO not being registered. As follows: A first chance exception of type 'System.Runtime.InteropServices.COMException' occurred in MIKEOPEMAIL.exe Additional information: COM object with CLSID {3FA7DEB3-6438-101B-ACC1-00AA00423326} is either not valid or not registered. Quote
masj78 Posted August 27, 2003 Author Posted August 27, 2003 Problem Solved! Well, in the end with some testing I managed to get this working. You need to rerun the Office XP setup and add the CDO 1.2.1 library as an extra install on Outlook as its not installed as default on the first install. Alas even after repointing the reference in VS.NET, it still would not work. Did not recognise the CDO.dll which came with Office XP as valid. Swapped it instead with a copy of the CDO.dll, which came with Outlook 98 and seemed to work fine. Quote
tjhalbert Posted October 1, 2003 Posted October 1, 2003 I'm on the same journey you recently completed. I'll have to see if I still have a CD with Outlook 98 around here. Quote
masj78 Posted October 2, 2003 Author Posted October 2, 2003 Warning before using CDO! If needed I have a copy of the Outlook 98 cdo.dll that I can email. However I would think carefully before using CDO to build any email interfaces. The reason is that clever Microsoft introduced a security clause, which prevents access to address book and sender field. So if you need to get the From field in emails to use in your work or access to addresses in yours or others address books, its a no go. Would suggest using the other 2 forms of CDO, though I am not sure if they have sucome to the same fate and don't know how to use them myself.:mad: Quote
AlexCode Posted October 2, 2003 Posted October 2, 2003 I've used the CDO.dll on a recent project to read eml files. I used the CDO.dll that came with the Exchange SDK... The application runs without any office installed... As it works like this, I think it doesn't have any incopatibilities with the Outlook versions... Quote Software bugs are impossible to detect by anybody except the end user.
tjhalbert Posted October 2, 2003 Posted October 2, 2003 I have already developed the application, and it worked fine on a desktop with NT4.0 and Outlook 98. I pull the addresses from a database table, so I don't anticipate this being a problem. The problem is that the I am now trying to run this application on a new computer with Windows XP. There are two CDO files in my folders: CDOEX.DLL and cdosys.dll. According to the propoerties for CDOEX it is for the Exchange server, and my application is not able to start the Session object. What is more frustrating is that I have not been able to add the cdosys.dll library reference to my application. I have put the object in the same folder as the CDOEX.dll object, but even after I attempt to add the reference it doesn't appear on my reference list. Is there something extremely simple that I am overlooking here? Quote
Recommended Posts