What is a good alternative to the AutoIT Window Info application? With Creo Parametric 4.0, the AutoIT Window Info application is no longer able to identify most of the window controls in Creo. The Windows inspect.exe doesn't work either. We use AutoIT to customize/automate some of the dialogs within Creo Parametric, and many have stopped working. CP4 M020 Windows 10. Regards, Dan N.
There may be no help if PTC has created their own gadgets. I noted a while back in using AutoIt that PTC used a lot of custom elements. Even if there was some identifier, it would do no good because they aren't responding through the Windows UI which is how AutoIt would reach them. They are probably just gathering mouse click coordinates and figuring out what's going on on their own.
AutoIt did have an image match UDF. I haven't looked to see if it's still being updated.
please can you upload some testing application. I use AutoIT, too and I would like to see the application which works in CR3 and fails in CR4.
I cannot upload the whole script, but here is a snippet from it.
We're running both mapkeys and scripts to automate the process of saving objects in different formats (Native, STEP, IGES, DXF, PDF, etc.) from Creo and performing other OS actions.
A "launch" mapkey is used to initiate the AutoIT script which runs in the background.
The AutoIT script will either send mapkey sequences to Creo or interact directly with the Creo dialogs/menus.
In the following snippet, we're entering the path information into the Save a Copy dialog, selecting the "GO" button (blue arrow), and then selecting the OK button. [The Save a Copy dialog is already open and the save as type has already been selected.]
The portion that no longer works in CP4 is marked with a "*".
Func PutSaCPath( ByRef $Path ) ; put the folder name into the folder address and select OK
Local $SAC ; Save a Copy dialog window handle
; $Path - folder path as input
$SAC=WinActivate( "Save a Copy", "" )
ControlFocus( $SAC, "", "[CLASS:DrawingArea; INSTANCE:8]" ) ; focus on folder address area
ControlClick( $SAC, "", "[CLASS:DrawingArea; INSTANCE:8]" ) ; folder address area activate
Send( $Path, 1 ) ; enter folder name
Sleep( 250 )
* ControlClick( $SAC, "", "[CLASS:DrawingArea; INSTANCE:15]" ) ; select go
* ControlFocus( $SAC, "", "[CLASS:Layout; INSTANCE:26]" ) ; focus on the OK - Cancel buttons area
* Local $aSize=ControlGetPos( $SAC, "", "[CLASS:Layout; INSTANCE:26]" ) ; get the size of the OK - Cancel area
* ControlClick( $SAC, "", "[CLASS:Layout; INSTANCE:26]", "left", 1, $aSize/4, $aSize/2 ) ; select OK button
Sleep( 1000 ) ; wait 1 second
EndFunc ; PutSaCPath
I'm able to work around this particular dialog issue by using more mapkeys. Not the most reliable way, but it works most of the time.