Sign in to follow this  
Followers 0
kwlayman

Hooking Custom Edit Control

5 posts in this topic

I'm trying to get the text from a custom chat control and having no luck using normal autoit methods. I'm assuming the vendor doesn't want to make it easy to automate their application, so if my research is correct api hooking is the only way to do so other than ocr which is not fast or accurate enough.

I've examined the controls messages using Spy++ and get the info below, but I can't see how the text is being transmitted to the control.

I guess my question for someone familiar with internal windows operations is this: The text must be sent to the window somehow, but it doesn't appear that the messages Spy++ is recording contain the text or even could code for the text, so how can I grab the text internally?

Sorry for the wrapping of the message text below, I couldn't figure out how to keep it from doing so.

Thanks,

Kevin

<00001> 00030E54 P message:0x046F [user-defined:WM_USER+111] wParam:00020005 lParam:00A17375

<00002> 00030E54 S ....................................................................................................

..................................................................WM_PAINT hdc:00000000

<00003> 00030E54 S ....................................................................................................

...................................................................WM_NCPAINT hrgn:E3042489

<00004> 00030E54 R ....................................................................................................

...................................................................WM_NCPAINT

<00005> 00030E54 S ....................................................................................................

...................................................................WM_ERASEBKGND hdc:A001072E

<00006> 00030E54 R ....................................................................................................

...................................................................WM_ERASEBKGND fErased:False

<00007> 00030E54 R ....................................................................................................

..................................................................WM_PAINT

<00008> 00030E54 P message:0x046F [user-defined:WM_USER+111] wParam:00020005 lParam:00A17375

<00009> 00030E54 S ....................................................................................................

..................................................................WM_PAINT hdc:00000000

<00010> 00030E54 S ....................................................................................................

...................................................................WM_NCPAINT hrgn:690424AE

<00011> 00030E54 R ....................................................................................................

...................................................................WM_NCPAINT

<00012> 00030E54 S ....................................................................................................

...................................................................WM_ERASEBKGND hdc:0A012501

<00013> 00030E54 R ....................................................................................................

...................................................................WM_ERASEBKGND fErased:False

<00014> 00030E54 R ....................................................................................................

..................................................................WM_PAINT

<00015> 00030E54 P message:0x046F [user-defined:WM_USER+111] wParam:00020005 lParam:00A17375

<00016> 00030E54 S ....................................................................................................

..................................................................WM_PAINT hdc:00000000

<00017> 00030E54 S ....................................................................................................

...................................................................WM_NCPAINT hrgn:FE042569

<00018> 00030E54 R ....................................................................................................

...................................................................WM_NCPAINT

<00019> 00030E54 S ....................................................................................................

...................................................................WM_ERASEBKGND hdc:0401072A

<00020> 00030E54 R ....................................................................................................

...................................................................WM_ERASEBKGND fErased:False

<00021> 00030E54 R ....................................................................................................

..................................................................WM_PAINT

Share this post


Link to post
Share on other sites



I'm trying to get the text from a custom chat control and having no luck using normal autoit methods. I'm assuming the vendor doesn't want to make it easy to automate their application, so if my research is correct api hooking is the only way to do so other than ocr which is not fast or accurate enough.

I've examined the controls messages using Spy++ and get the info below, but I can't see how the text is being transmitted to the control.

I guess my question for someone familiar with internal windows operations is this: The text must be sent to the window somehow, but it doesn't appear that the messages Spy++ is recording contain the text or even could code for the text, so how can I grab the text internally?

Sorry for the wrapping of the message text below, I couldn't figure out how to keep it from doing so.

Thanks,

Kevin

--snip--

What does the AutoIt Window Info tool tell you about the control? Can you post the info for us?

Auto3Lib: A library of over 1200 functions for AutoIt

Share this post


Link to post
Share on other sites

What does the AutoIt Window Info tool tell you about the control? Can you post the info for us?

This is the Window info:

>>>>>>>>>>>> Window Details <<<<<<<<<<<<<

Title: .COM Poker After Dark Rd 1 (17524982), Table 12 - 15/30 - No Limit Hold'em - Logged In As xxxxx

Class: FTC_TableViewFull

Size: X: 3 Y: 3 W: 802 H: 574

>>>>>>>>>>> Mouse Details <<<<<<<<<<<

Client: X: 132 Y: 514

Cursor ID: 2

>>>>>>>>>>> Pixel Color Under Mouse <<<<<<<<<<<

RGB: Hex: 0xDEEBF7 Dec: 14609399

>>>>>>>>>>> Control Under Mouse <<<<<<<<<<<

Size: X: 5 Y: 492 W: 266 H: 52

Control ID: 771

ClassNameNN: FTCChat

Text:

Style: 0x50200000

ExStyle: 0x00000020

>>>>>>>>>>> Status Bar Text <<<<<<<<<<<

>>>>>>>>>>> Visible Window Text <<<<<<<<<<<

>>>>>>>>>>> Hidden Window Text <<<<<<<<<<<

Share this post


Link to post
Share on other sites

This is the Window info:

>>>>>>>>>>>> Window Details <<<<<<<<<<<<<

Title: .COM Poker After Dark Rd 1 (17524982), Table 12 - 15/30 - No Limit Hold'em - Logged In As xxxxx

Class: FTC_TableViewFull

Size: X: 3 Y: 3 W: 802 H: 574

>>>>>>>>>>> Mouse Details <<<<<<<<<<<

Client: X: 132 Y: 514

Cursor ID: 2

>>>>>>>>>>> Pixel Color Under Mouse <<<<<<<<<<<

RGB: Hex: 0xDEEBF7 Dec: 14609399

>>>>>>>>>>> Control Under Mouse <<<<<<<<<<<

Size: X: 5 Y: 492 W: 266 H: 52

Control ID: 771

ClassNameNN: FTCChat

Text:

Style: 0x50200000

ExStyle: 0x00000020

>>>>>>>>>>> Status Bar Text <<<<<<<<<<<

>>>>>>>>>>> Visible Window Text <<<<<<<<<<<

>>>>>>>>>>> Hidden Window Text <<<<<<<<<<<

Ah, one of those poker things. Can't help you here. Most of the online poker apps are built to specifically prevent you from botting them.

Auto3Lib: A library of over 1200 functions for AutoIt

Share this post


Link to post
Share on other sites

Ah, one of those poker things. Can't help you here. Most of the online poker apps are built to specifically prevent you from botting them.

Yes, hence my question about how to do hard things :)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0