Plugin could not be created
"Steven Millington" <[email protected]> Tue, 7 Dec 2004 15:38:58 -0000
| Newsgroups | gmane.network.jabber.exodus.user |
|---|---|
| Message-ID | <[email protected]> |
HI
I've just figured out how to create my own plug in for Exodus. The plug-in
doesn't do anything yet but it does show in the Exodus plug-ins dialog.
When I click configure the plug-in returns 'Plug-in could not be created'.
After clicking the mouse, I get the message the message 'Plug-in could not
be initialised or configured'.
Now I'm not sure if this is just because I haven't filled one of the
IExodusPlugin interface members (looking at that now) or because there is
something wrong with the COM IDL file (I'm new to ATL).
Any Help appreciated.
Steve
My IDL File.
// This file will be processed by the MIDL tool to
// produce the type library (Audio.tlb) and marshalling code.
import "oaidl.idl";
import "ocidl.idl";
[
object,
uuid(E89B1EBA-8CF8-4A00-B15D-18149A0FA830),
dual,
nonextensible,
helpstring("IExodusController Interface"),
pointer_default(unique)
]
interface IExodusController : IDispatch{
};
[
object,
uuid(01A32F6A-DB3A-424B-92DA-399F35CD929B),
dual,
nonextensible,
helpstring("IExodusChat Interface"),
pointer_default(unique)
]
interface IExodusChat : IDispatch{
};
[
object,
uuid(DCDFAD67-6CB2-4202-B29C-50D633C02596),
dual,
nonextensible,
helpstring("IExodusPlugin Interface"),
pointer_default(unique)
]
interface IExodusPlugin : IDispatch{
[id(1), helpstring("method Startup")] HRESULT Startup([in]
IExodusController * ExodusController);
[id(2), helpstring("method Shutdown")] HRESULT Shutdown(void);
[id(3), helpstring("method Process")] HRESULT Process([in] BSTR xpath,
[in] BSTR event, [in] BSTR xml);
[id(4), helpstring("method NewChat")] HRESULT NewChat([in] BSTR jid,
[in] IExodusChat * Chat);
[id(5), helpstring("method NewRoom")] HRESULT NewRoom([in] BSTR jid,
[in] IExodusChat * Room);
[id(6), helpstring("method NewIM")] HRESULT NewIM([in] BSTR jid, [in]
BSTR* Body, [in] BSTR* Subject, [in] BSTR XTags, [out,retval] BSTR* AddXML);
[id(7), helpstring("method Configure")] HRESULT Configure(void);
[id(8), helpstring("method MenuClick")] HRESULT MenuClick([in] BSTR
ID);
[id(9), helpstring("method MsgMenuClick")] HRESULT MsgMenuClick([in]
BSTR ID, [in] BSTR jid, [in] BSTR* Body, [in] BSTR* Subject);
[id(10), helpstring("method NewOutgoingIM")] HRESULT NewOutgoingIM([in]
BSTR jid, [in] IExodusChat * InstantMsg);
};
[
uuid(EA037789-59B9-47AA-898F-3E060E76B34E),
version(1.0),
helpstring("Audio 1.0 Type Library")
]
library AudioLib
{
importlib("stdole2.tlb");
[
uuid(9FB6F2B5-8D68-4566-BB28-A36921CCA686),
helpstring("ExodusController Class")
]
coclass ExodusController
{
[default] interface IExodusController;
};
[
uuid(E722F87C-3FFF-4EA6-9D7C-5106366F3C42),
helpstring("ExodusChat Class")
]
coclass ExodusChat
{
[default] interface IExodusChat;
};
[
uuid(258017CD-EE47-4B11-97E4-7A51ABB48552),
helpstring("ExodusPlugin Class")
]
coclass ExodusPlugin
{
[default] interface IExodusPlugin;
};
};
_______________________________________________
Exodus mailing list
[email protected]
http://mail.jabber.org/mailman/listinfo/exodus