I'm writing a new plugin. I've manged to get the api working and can trap events and all that stuff. I'm doing it in C++ and I'm fairly happy with COM.
My plugin needs to trap inbound and outbound messages (this is easy) and also manipulate the text entry and main chat windows. I see how it is easy to get an IDispatch pointer back from OnIMWindowCreated but this doesn't really let me get at the richedit control of either the typed message or the chat window. Does anybody know how to get a COM pointer to these windows or even a HWND to the rich edit window (which I assume it is).
In my plugin I intend to add a whole range of rich tags like animated smiley's, sound clips and files, even video perhaps. To send these the user will send tags to the person they are chatting. If they don't have the plugin the tag will tell them how to install it. If they do have the plugin they will see the rich content. I may well be missing somthing obvious however.
I notice Pichou seems to hook the richedit dll because he has a dll in his distribution called RichEdHook.dll. He doesn't however expose any of this in his API that I can see.
Any help would be much appreciated. I even have a small budget to pay people if anybody is interested.
I'll check out the Active Accessibility API in more detail - I guess my real stumbling block is working out how to manipulate the rich text area to put animaged gifs in there and other rich content.
Maybe that's not possible but there probably is a way!
quote:Originally posted by bigmog
I'll check out the Active Accessibility API in more detail - I guess my real stumbling block is working out how to manipulate the rich text area to put animaged gifs in there and other rich content.
Maybe that's not possible but there probably is a way!
Bigmog!
AFAIK it's possible, look at emoticons and custom emoticons.
quote:Originally posted by Concord Dawn
I guess my real stumbling block is working out how to manipulate the rich text area to put animaged gifs in there and other rich content.
Thanks Juzzi - so do you know how to get at the message windows and put custom annimated gifs (emoticons) in them and also sound clips. I want to put a whole new set of emoticons in there but if the person receiving the emoticon doesn't have my plguin I want to display a link to the plugin instead!
If you are prepared to help me with this that would be great!
quote:Originally posted by Juzzi
I can help you when you've fixed the first problem, obtaining a handle to the richedits. Then I can help you with inserting pictures etc.
MSN Chat windows use a windowless richedit control, so i dont think you can get a handle to them. The way Patchou adds text to it is by hooking the creation of the control and getting a pointer to the ITextServices if i remember correctly.
Yep I think one method to get a ITextServices is using COM hooking as described in http://www.thecodeproject.com/com/cominterfacehoo...xp=0&select=787796. However it might also be possible with Active Accessibility I'm going to check that out as it would be better to do it this way if it is.