An application is there which is created using vc++,mostly mfc.
DOn't know the details completely.
WHen I try to automate the control clicks for testing the UI.
THe below control is not detected.
As you can see, during UI operations I can click the elements one by one.
But all the elements is selected as a whole set, when I use the Windowinfo tool.
How to click this using AutoIT.?
I have tried searching for quite some time now but couldn´t find a single working way to change the class of your GUI that doesn´t include changing it manually after its compilation.
First or "AutoIt v3 GUI" is a pretty boring name tbh and i would like to spice it up a bit, also, and more importantly, I would like to identify my windows by something other than its title as it will change depending on some factors and im using two different programs independently as multi threading isn't supported.
Any help is appreciated! Thank you!
how can I wait activate for windows with information as in the photos attached?
Class is not being recognized by the script.
thanks in advanced.
This is the first include file I designed
This work is especially directed to NVDA free screen reader users
It contains a set of functions that enable you to control the program
Such as forcing the program to read a custom text
Force it to stop talking
Find out if the program is running
And show custom text in the Braille screen
Available functions are
to load the dll file
to UnLoad the dll file
to speak a custom text
to show custom text in the Braille screen
to Force the NVDA to stop talking
to check if the NVDA is running
important note :
All of these functions depend on a nvdaControllerClient32.dll
I've added it in the attachments, as well as a file for examples, and other files
As the source and examples in other languages
For those who wanted to download the free screen reader, this is the download link from the official website
i hope you like this topic
I hope you will try it and give me your opinions
Thank you all members and administrators for their help
now with the Attachments
I wrote a script a few months ago that was working at the time. When I tried it today it wouldn't retrieve any controls. The application successfully launches, but I cannot figure out how to retrieve the control from the window that is launched. I'm on a windows 10 machine using AutoIt v220.127.116.11. The only thing I can think of that has changed is windows updates? Code is below, any help is greatly appreciated. ; Notes: ; HandleError( handleToCheck, MsgToLogOnFailure, terminateAutoItOnFail ) : function that simply checks the handle and quits AutoIt if not present ; all of this works well FileChangeDir( $CLIENT_APPLICATION_DIR ); Run( "Client.exe" ) Local $hClient = WinWaitActive( $CLIENT_TITLE, "", 10 ) $terminateOnFail = 1 HandleError( $hClient, "LaunchClient::Error: Failed to launch client. Either timed-out or failed.", $terminateOnFail ) LogToFile( "Client launched, waiting for system to ready." ) Sleep( 5000 ) ; this part does not work ; $SYSTEM_INDICATOR is a global variable. I have tried these values: "SystemIndicatorWindow" (Text), "Qt5QWindowIcon101" (ClassNN), and ; "[CLASS:Qt5QWindowIcon; INSTANCE:101]" Local $hStatusIndicator = ControlGetHandle( $hClient, "", $SYSTEM_INDICATOR ) HandleError( $hStatusIndicator, "CheckStatus::Error: couldn't retrieve control: " & $SYSTEM_INDICATOR, $terminateOnFail ) This is what the spy reveals:
Edit: I just tried this code and it works for notepad++.
FileChangeDir( "C:\Program Files\Notepad++\" ); Run( "notepad++.exe" ) Local $hNotePad = WinWaitActive( "new 1 - Notepad++", "", 10 ) If $hNotePad = 0 Or $hNotePad = -1 Then MsgBox( $MB_SYSTEMMODAL, "Error", "Error getting app handle." ) EndIf Sleep( 1000 ) Local $hNewFileBtn = ControlGetHandle( $hNotePad, "", "[CLASS:ToolbarWindow32; INSTANCE:1]" ) If $hNewFileBtn = 0 Or $hNewFileBtn = -1 Then MsgBox( $MB_SYSTEMMODAL, "Error", "Error getting button handle." ) EndIf MsgBox( $MB_SYSTEMMODAL, "Success", "Success." )