- This topic has 21 replies, 5 voices, and was last updated 18 years ago by Newbie.
-
AuthorPosts
-
September 4, 2006 at 5:00 pm #188467NewbieMember
AS You May Know, Most Of Us Use The Constant WM_GETTEXT to get the text from paltalk. However, there’s a problem that you guys don’t think of is “WM_GETTEXT definately does not work over 64k”. SO if the control contain 64,001 characters then your app will crash obviously. Here’s the solution:
Const EM_STREAMOUT
Not only it can grab more text than WM_GETTEXT but also the text format that we grab will be rtf. Wow, how fun huh ? What’s that mean ? That means that the rtf will contain information like color, font, smileyicon….
Now, there’s a problem. when i try to sendmessage to the control to grab the rtf the paltalk is just crash. Once again we are dealing with memory ( just like the syslistview). I hope that you guys will work with me to findout a solution to this problem.
September 4, 2006 at 5:04 pm #188488NewbieMemberBTW, How can we become a moderator of your forum loco 😀
September 4, 2006 at 6:32 pm #188487AdminAdministratoryou cant, he has 11 mods now and that is way to many already…
September 4, 2006 at 7:36 pm #188486AdminAdministratorNewbie thanks for the info bro 🙂 the be cool if we could make it stable enoguh so we can get icons and stuff 🙂
bout the mod, well we got 11 now but if anyone goes out u be next 8)
September 11, 2006 at 12:18 am #188485Ryuu99MemberI’m going to look more into it, but I believe EM_STREAMOUT requires a callback method. If I remember correctly, this presents a problem since you can’t pass a pointer to a function to another process (the process doesn’t know where the actual callback is located since it’s all relative addressing).
In other words, you probably have to specify a callback function that is located within the paltalk process. I’m experimenting with this via dll injection.
September 11, 2006 at 12:38 am #188484NewbieMember😀 You’re absolutely right. I’m new to dll hooking and dll injection. but yeah it riquired a call back . just don’t have any idea to to that. on local app it work perfectly. however on a remote app…
September 11, 2006 at 4:12 am #188483Ryuu99MemberI’ve just successfully called the EM_STREAMOUT message! It works beautifully with giving the full RTF formatting. My code at the moment is extremely sloppy, but after a few days I’ll rewrite it to make it a little prettier… This is the first time I’ve tried a) working with hooks and b) doing anything with paltalk, but I’m pretty happy with the results so far.
The app I’m making is a simple greeter (I know, done to death hehe) that accomplishes the following tasks:
1) Injects a dll into the first paltalk chat room thread that it finds
2) Subclasses the SysListView32 control and monitors LVM_SETITEM messages for whenever they are setting text to subitem 2 (tells me a new person has entered the room and gets the name it’s adding to the list)
3) The dll is then sent a user-defined message to send EM_STREAMOUT to grab the text that’s currently in the edit control containing text that will be sent (in order to restore text that the user has already typed)The next steps that need to be written will be
4) Replace the text via EM_STREAMIN with the (now RTF formatted hehe) message I want to send
5) Send the message
6) Restore the text the user had typed
Now, as for whether or not this can be programmed in VB, I have no idea… I’m writing mine in C++. One thing I should mention, you have to be REALLY careful when subclassing another processes control so you don’t crash Paltalk. If you want the source when it’s finished, lemme know and maybe someone could find a way to port it into VB. ^_~
Thx BIG time for the tip on EM_STREAMOUT ^_^
Edit: Steps 4, 5 and 6 are accomplished. I will rewrite the program in MUCH cleaner code and then share it with you if you wish.
2nd Edit: Just for fun I now intercept everytime a message is about to be sent and reformat it in colorful ways lol… Basically, I just got bored and made a fader.
September 12, 2006 at 3:13 am #188482NewbieMember😀 Glad to hear that, would you like to share your C++ experience? i’ll try to make it work on VB code. thanks
September 12, 2006 at 11:01 am #188481DepartureMemberyeah im interested also about this EM_STREAMOUT function, im going to go and google the fucker
September 12, 2006 at 6:23 pm #188480BattleStar-GalacticaMemberfor what utility use streamout for pt, pt have an option lets u save your room session as rtf format. and I have tried streamout with hooking and the datas hooked are the same as save as .rtf with pt menu.
September 13, 2006 at 12:15 am #188479NewbieMember😀 Better to know more than don’t know anything
September 15, 2006 at 11:42 am #188478Ryuu99MemberAlright, I trashed my other project and am currently working on a new one. This project consists of a loader application (basically sits in the taskbar looking for paltalk applications, and hooks them when it finds them)..
The loaded dll then monitors the creation of new windows, and if a window is detected to be an IM session or chat room, it subclasses the editbox and formats the text for yet ANOTHER fader… My fader is pretty cool however, it’s a lot like yahoo IM’s color fader (multiple colors).
Anyway, I still have to create the loader and setup the hook (right now it just directly injects the dlls via WriteProcessMemory/LoadModule) but once I do I’ll post my complete source for it! 🙂
Oh, and for anyone who’s daring enough to try subclassing the editbox and/or toolbar in any chat window, you MUST MUST MUST subclass their parent window as well, and when you receive a WM_DESTROY command, remove the child subclassing immediately or Paltalk WILL crash. I’m not entirely sure why this occurs, but probably has something to do with their richeditbox code being in a seperate dll, not sure, dont care, lol.
September 15, 2006 at 2:51 pm #188477NewbieMemberSeptember 15, 2006 at 10:15 pm #188476DepartureMemberwhat do you mean anyone daring to subclass??
All the paltalk programs on here are made because of subclassing down to the richedit box, thats what every single pal app is based on (subclassing)
September 15, 2006 at 10:49 pm #188475BattleStar-GalacticaMemberhe’s talking about install a new winproc for richtextbox control but it will cost him the performance, and it’s not necessairy to install a new winproc for the programm made for paltalk.
-
AuthorPosts
Related
- You must be logged in to reply to this topic.