Tom Knowlton
asked on
Error Updating Props : -2147221163 Interface not registered
Microsoft (R) Windows Script Host Version 5.6
Copyright (C) Microsoft Corporation 1996-2001. All rights reserved.
New Event Binding created:
Event: onsave;ondelete
Sink: MyEventSink.ExchEventSink
FullBindingUrl: file://./backofficestorage /buyersfun d.com/mbx/ tom/FaxFai lure/reg
Event.eml
Error Updating Props : -2147221163 Interface not registered
Press any key to continue . . .
~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ ~~~~
Trying to get an Exchange Event Sink working on our server.
Can anyone help me with this error?
Copyright (C) Microsoft Corporation 1996-2001. All rights reserved.
New Event Binding created:
Event: onsave;ondelete
Sink: MyEventSink.ExchEventSink
FullBindingUrl: file://./backofficestorage
Event.eml
Error Updating Props : -2147221163 Interface not registered
Press any key to continue . . .
~~~~~~~~~~~~~~~~~~~~~~~~~~
Trying to get an Exchange Event Sink working on our server.
Can anyone help me with this error?
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
I have created a web page which explains what I have done so far to troubleshoot this.
http://www.knowltonfamily.com/es_troubleshoot.htm
http://www.knowltonfamily.com/es_troubleshoot.htm
ASKER
From the web page I posted it should be apparent that I have indeed GAC'ed my Assembly. :)
ASKER
Turns out RegEvent.vbs is not needed.
Exchange Explorer (found with Exchange 2003 SDK Tools) does the exact same thing.
Go here for details:
https://www.experts-exchange.com/questions/20962654/Please-help-troubleshoot-Exchange-Event-Sink-registration-problem.html
Exchange Explorer (found with Exchange 2003 SDK Tools) does the exact same thing.
Go here for details:
https://www.experts-exchange.com/questions/20962654/Please-help-troubleshoot-Exchange-Event-Sink-registration-problem.html
ASKER
The tutorial at this link:
http://www.codeproject.com/csharp/CsManagedEventSinksHooks.asp
is very very good...................... but it does have some flaws.
1) You do NOT need to run RegEvent.vbs AT ALL......ignore this suggestion in the tutorial. Instead, download and install the SDK Tools and run Exchange Explorer instead to register the Event and hook it into the EventSink code.
2) I recommend using regsvcs /appname:YourAppName <full path to your DLL including extension> from the command line, instead of using the Component Services GUI to register the COM DLL. I have to do some further testing to see if the GUI works...but I know for sure the command line route using REGSVCS works well.
3) After you have registered the COM DLL (your event sink) in Component Services......then go and register the Exchange Store Event using Exchange Explorer. THEN go back to Component Services....right-click on your App Name and click on START. This is what actually starts the EventSink (your C# DLL) talking to the Exchange Store. Until you do this nothing will happen. This was left out of the tutorial. A small thing, but an important thing to mention.
http://www.codeproject.com/csharp/CsManagedEventSinksHooks.asp
is very very good......................
1) You do NOT need to run RegEvent.vbs AT ALL......ignore this suggestion in the tutorial. Instead, download and install the SDK Tools and run Exchange Explorer instead to register the Event and hook it into the EventSink code.
2) I recommend using regsvcs /appname:YourAppName <full path to your DLL including extension> from the command line, instead of using the Component Services GUI to register the COM DLL. I have to do some further testing to see if the GUI works...but I know for sure the command line route using REGSVCS works well.
3) After you have registered the COM DLL (your event sink) in Component Services......then go and register the Exchange Store Event using Exchange Explorer. THEN go back to Component Services....right-click on your App Name and click on START. This is what actually starts the EventSink (your C# DLL) talking to the Exchange Store. Until you do this nothing will happen. This was left out of the tutorial. A small thing, but an important thing to mention.
ASKER
UPDATE:
Well, guess what?
I finally had a major breakthrough on this @!#$^% problem that has been driving me crazy for the last few weeks!!!!!!!
It is a very small change.
Apparently the method MoveFirst( ) does not work so well with Exchange.
This was the cause of my COMException: "Interface not registered" error message this entire time.
The solution is to use Move(1,0) instead of MoveFirst( ).
That's it. Simple.
This answer came courtesy of Tom Rizzo, an author who was kind enough to correspond with me and help me figure-out finally what the problem was.:
Looking for a good book on programming Exchange, Outlook, ADSI and
SharePoint? Check out http://www.microsoft.com/MSPress/books/5517.asp
My I also reommend:
.NET and COM: The Complete Interoperability Guide ISBN:067232170X
http://www.amazon.ca/exec/obidos/ASIN/067232170X/componentsnot-20/701-9386310-4703553
Well, guess what?
I finally had a major breakthrough on this @!#$^% problem that has been driving me crazy for the last few weeks!!!!!!!
It is a very small change.
Apparently the method MoveFirst( ) does not work so well with Exchange.
This was the cause of my COMException: "Interface not registered" error message this entire time.
The solution is to use Move(1,0) instead of MoveFirst( ).
That's it. Simple.
This answer came courtesy of Tom Rizzo, an author who was kind enough to correspond with me and help me figure-out finally what the problem was.:
Looking for a good book on programming Exchange, Outlook, ADSI and
SharePoint? Check out http://www.microsoft.com/MSPress/books/5517.asp
My I also reommend:
.NET and COM: The Complete Interoperability Guide ISBN:067232170X
http://www.amazon.ca/exec/obidos/ASIN/067232170X/componentsnot-20/701-9386310-4703553
ASKER
More on the MoveFirst problem I described:
http://support.microsoft.com/default.aspx?scid=kb;en-us;273791
If you are getting into Event Sinks....I recommend the following tutorial:
http://www.codeproject.com/csharp/CsManagedEventSinksHooks.asp
Make sure and read the article questions and follow-ups at the bottom!
There are a few caveats. E-mail me at my Profile e-mail address and we can talk about them. :)
http://support.microsoft.com/default.aspx?scid=kb;en-us;273791
If you are getting into Event Sinks....I recommend the following tutorial:
http://www.codeproject.com/csharp/CsManagedEventSinksHooks.asp
Make sure and read the article questions and follow-ups at the bottom!
There are a few caveats. E-mail me at my Profile e-mail address and we can talk about them. :)
ASKER
You wrote:
Also...this will probably interest you as well...even more as it is c#:
http://www.codeproject.com/csharp/CsManagedEventSinksHooks.asp
~~~~~~~~~~~~~~~~~~
What a coincidence....it is this exact tutorial that I am following......
It has worked fin all the way up to the part where I bind the component to the Exchange Server Store.......hence the error I am getting.