QUOTE(TheUberOverlord @ Aug 24 2006, 02:00 AM) [snapback]290550[/snapback]
Please see this is is written in JavaScript and it Speaks Skype4COM events and you can use it to see how to recover from status changes:
http://testing.onlytherightanswers.com/mod...icle&sid=52Thanks for coming in my help.

I see how you did the events in the js example. But my problem is adding the event in c#.
The problem seems to be that ISkype and _ISkypeEvents_Event have both a method with the same name:
AttachmentStatus.my skype object is created like this:
private Skype skype = new Skype(); Going a little deeper i found this definition for "Skype"
CODE
using System.Runtime.InteropServices;
namespace SKYPE4COMLib { [CoClass(typeof(SkypeClass))] [Guid("B1878BFE-53D3-402E-8C86-190B19AF70D5")]
public interface Skype : ISkype, _ISkypeEvents_Event { } }
That would explain the "ambiguity" part.
I also went to
_ISkypeEvents_Event definition and found out that indeed the event that i want to use is define here:
CODE
event _ISkypeEvents_AttachmentStatusEventHandler AttachmentStatus
Now my problem is that i don't know how to specify which one's method i'm reffering to when i do the
CODE
this.skype.AttachmentStatus += this.SkypeAttachmentStatusChanged;
I was able to use the Call status event below (as found in one of the examples on developer section)
CODE
Skype skype = new Skype();
skype.CallStatus += this.SkypeCallStatusChanged
but this was possbile only because the two interfaces DO NOT share this "CallStatus" method name. Therefore it went straight for the
_ISkypeEvents_Event one, and no ambiguity had taken place.
So, all i need is to be able to differentiate between the two interfaces.
Any ideas?
Thanks in advance,
Cristian