Help in Exodus Plugin creation in C#

Durga Prasad <dprasad_114-/[email protected]> Wed, 23 Nov 2005 03:19:28 +0000 (GMT)
Newsgroups gmane.network.jabber.exodus.user
Message-ID <[email protected]>
 hi All,
  
  I want to write a Plugin for Exodus Client using C#.  For testing  purpose, I wrote main class which implements IExodusPlugin interface  that will add a Menu Item if the user clicks on a Roster name.
  
  The following is the structure of the Main Class ::
  
  using System;
  using System.Runtime.InteropServices;
  
  namespace ExodusPluginTesting
  {
      /// <summary>
      /// Summary description for Class1.
      /// </summary>
  
      [ Guid("E10C6CDE-8D8B-46c2-AE85-0185039E9958") ]
      [ClassInterface(ClassInterfaceType.AutoDual)]
      public class ExodusPluginTesting : Exodus.IExodusPlugin
      {
          public string ID = "";   
          Exodus.ExodusController exodusController;
         
          public void Startup(Exodus.ExodusController exController)
          {
              string s = "This is my Plugin";   
              exodusController =
                   (Exodus.ExodusController) exController;
              ID =  exodusController.addContactMenu(s);                                                
          }
  
          public  void Shutdown()
          {
              exodusController.removeContactMenu(ID);
              exodusController = null;
          }
  
          public void Process(string xpath, string eventRaised, string xmlObject)
          {       
          }
  
          public void NewChat(string jID, Exodus.ExodusChat exodusChat)
          {       
          }
     
          public void NewRoom(string jID, Exodus.ExodusChat Room)
          {       
          }
     
          public  string  NewIM(string jID, ref string body, ref string subject, string xTags)
          {
              string k = " " ;
              return (k);
          }
  
          public void Configure()
          {   
          }
  
          public void MenuClick(string ID)
          {       
          }
  
          public void  MsgMenuClick(string ID,string jID, ref string  body,ref string  subject)
          {       
          }
  
          public void NewOutgoingIM(string jID, Exodus.ExodusChat instantMSG)
          {       
          }
      }
  }
  
  
  I converted "Exodus.tlb" to "Exodus.dll" using "tlbImp.exe" tool.   And I included this 'Exodus.dll' in my code to import the  "IExodusPlugin" interface structure into the Main Class  (ExodusPluginTesting()).
  I built the solution (with Component Registry).  THE OUTPUT files  I got is "ExodusPluginTesting.dll" and "ExodusPluginTesting.tlb". 
  
  
  Then I placed the 'ExodusPluginTesting.dll' file in "C:\Program  Files\Exodus\Plugins" directory.  I started Exodus client.   But I didn't view the PLUGIN in the LIST.  I tried several builds  and placed it in PLUGINS directory, still, I didn't find it in the list.
  
  
  Is my Interface implementation correct or shall I need to declare the interface structure also (without using Exodus.dll).
  
  Can anybody help me in this aspect what procedure to follow to create .DLL Plugin for EXODUS.
  
  
  
  Thanks,
  Durga Prsad T

		
---------------------------------
  Win a Yahoo! Vespa NEW - Yahoo! Cars has 3 Vespa LX125s to be won Enter Now!

_______________________________________________
Exodus mailing list
[email protected]
http://mail.jabber.org/mailman/listinfo/exodus