- This topic has 51 replies, 9 voices, and was last updated 12 years ago by NaLeT.
-
AuthorPosts
-
May 23, 2012 at 6:13 pm #186925AdminAdministrator
Thanks String 🙂
May 30, 2012 at 11:04 pm #186924light 2012Memberhi
There is something wrong in admin bot
If there is a long comment, it doesn’t appear in text6 or text5
the problem in getlastline code
Gets the last line ,,,,doesn’t get the full comment 🙄 ❓May 31, 2012 at 8:14 am #186923StringMemberIf the sent text is so long that it takes 2 lines, then only the last line will be returned.
Eg:
PalUser: Some really long text string that
wraps to the next line.
Your “getlastline” function will return: “wraps to the next line.” As its name implies.You can get around some of this by stretching the chat room window to its maximum width. Also, removing the text formatting for incoming text also will help.
May 31, 2012 at 9:45 am #186922light 2012Member@String wrote:
You can get around some of this by stretching the chat room window to its maximum width. Also, removing the text formatting for incoming text also will help.
I know, but this solution doesn’t work always
How to get a full comment by code
I saw this in some programs
🙄June 2, 2012 at 3:21 pm #186921DepartureMemberHey loco, I think its time to start hooking paltalk text instead using Sendmessage/Postmessage types of codes to get text and send text, I also noticed you talked about cpu reaching 100% in a couple of recent threads. I highly suggest letting paltalk do the work for you and just “relaying” the incoming and outgoing to text to your applications, this should reduce a lot of your codes and make it a lot easier to update once you get the hang of it. just about every third party program for paltalk is based around incoming and outgoing text, so if you make this part easy then its only the imagination and good use of parsing the text that will determine how many different paltalk applications can be built. If you find it too much a task to hook then use the already created balool which does all the work for you and just release a series of plugins as applications for paltalk.. Otherwise if your ready to take a new step in programming and are willing to hook the text I can show you how it can be done using code injection methods to intercept incoming text and hows to send text straight to paltalk using the same method.
Anyway good job updating the codes it will be useful to many…
June 2, 2012 at 3:58 pm #186920StringMemberPost a pal text in/out hooking example. I’d be very interested in learning the process.
June 4, 2012 at 12:53 am #186919AdminAdministratorDep man lol Im ready for anything new just point the way I usually learn fast 🙂 even thou is summer I down for that idea :swift: thanks
June 4, 2012 at 12:34 pm #186918DepartureMemberI am at a work doing a training course for 2 weeks(locked down at a resort) so code demo will come when I get home. basically there are a couple of way to do it. you could hook an API which contains the message, and in your hook look for key strings, if the key string matches then pass the message to a parsing function. Or you could code hook the function in paltalk which means you would require to debug paltalk and get the address you wanted to place a jump to your code cave, and from there pass the string on to the parsing part of your code.I personally like this method the best and balool uses this method also, but this would mean updating your program with a new address to hook each time paltalk releases another version. hooking an API that contains the message would be more suited for different paltalk versions but it also comes with disadvantage, Alot of antivirus could detect this API hook, and mistake it for a virus. so you really need to weigh up what suits you the best. for personal apps I would hook the API method thus reducing the need to update every version of paltalk, but for public use I would code hook the paltalk function which contains the strings being passed, but this means updating. Then if implementing an updating system like balool you would only need to update 1 online file with new addresses and the programs could auto update it self without the user needing to download a new version of your program. A simple API to hook for example would be winsock, but there are others which would also have message string so your not limited to API hooking winsock only. I guess it comes down to you… if you think its worth the extra code making an update system for code hooking or spend the extra time creating a good parsing routine for API hooking, actually microsoft call this a “detour”… anyway have think about which method you prefer and I will write a simple demo(in delphi ofcause)..
June 5, 2012 at 6:52 pm #186917AdminAdministratorK man when you can back and u got time we work on it 🙂 so far the one which wont have an issue with the antivirus is best :swift:
June 6, 2012 at 12:44 pm #186916DepartureMemberkeep in mind this will require updating every time a new paltalk build gets released, but I can help you minimize the update using a search and replace method for patching, meaning you can search for an array of bytes using wildcards which means you might not have to update until paltalk decide to change the function. it works like “xxx??Xxx?xxx??” the questions marks can be any byte value but the “x” must match, this will return an address in memory to place your code hook. but ofcause I will discuss this in more detail when I get home and write some examples..
June 9, 2012 at 12:07 am #186915AdminAdministratorK man, but yo that sounding difficult lol and is summer so we’ll see :swift:
June 17, 2012 at 5:44 pm #186914AdminAdministratorHey so how u use the index thing to get nicks from the room, so far i done this
Declare
Const SysListView32index As Integer = 1
added functionPrivate Function SystenViewHandle() As Long Dim iPHnd As Long iPHnd = getPalSubForm(WindowClass, Combo1.Text, SplittrWindow10, SplittrIndex10) SystenViewHandle = ChatHnd(iPHnd, SysListView32index) Debug.Print ("SystenViewHandle- " & SystenViewHandle) ' for testing End Function
and call nick like this
Function NickGet() Dim iHnd As Long If Len(Combo1.Text) > 1 Then FindTheWindow (Combo1.Text) End If 'get nicks iHnd = SystenViewHandle Call GetListviewItem(iHnd) End Function
and nada ): the listview goes empty
June 17, 2012 at 9:44 pm #186913autopilotMemberJust a guess, but I think you are trying to get the chat handle rather then the listview
SystenViewHandle = ChatHnd(iPHnd, SysListView32index)
June 18, 2012 at 1:51 am #186912AdminAdministratorAh, I want the listview thou ehhehe can it be done via index or I have to use the old style ❓
June 18, 2012 at 2:25 am #186911autopilotMember@Admin wrote:
Ah, I want the listview thou ehhehe can it be done via index or I have to use the old style ❓
It can absolutely be done. Try looking at the chathnd method and you should see why it wont do the job for the syslistview. but you should also be able to see what chathnd does and figure out how to then find the syslistview.
-
AuthorPosts
Related
- You must be logged in to reply to this topic.