Jump to content
Sign in to follow this  

Clicking on button with ControlClick

Recommended Posts

I've bumped on problem on sending controlclick to a minimized client.

I'm trying to use ControlClick on netbalancer software to utilize net performance and I have to click on a few buttons when requirments are met.

There is no controlID on any button, so I used coordinates, it will be run on only one pc with same resolution so using coords is not so hacky solution but now I want to make it work even if client is minimized.

Using same method will only get button highlighted like mouse was howered over it but it wont be clicked.

Do anyone of you have any idea how this can be done or what I'm doing wrong?

Thanks for your time.

Share this post

Link to post
Share on other sites


I installed NetBalancer and got some Classes, but still can't get any button :P

$classes = WinGetClassList(WinGetHandle("[class:WindowsForms10.window.8.app.0.2004eee]" ))
ConsoleWrite($classes & @CRLF)

What are you trying to Click?

Take a look with cmd line, this should probably do what you need without touching anything on UI

How do I silently install NetBalancer?

Run it from the command console as administrator:

NetBalancerSetup.exe /sp- /verysilent /norestart

What are the other command line arguments for NetBalancer Setup?

Right now there are just a few:

/pwd: - sets the password

/priorities_file: - sets the global priorities file

/priorities_file_interval: - sets the global interval at which the priorities file will be re-read

/rules_file: - sets the global rules file

/rules_file_interval: - sets the global interval at which the rules file will be re-read

/serial: - activates NetBalancer during setup

/user_name: - sets the desired user name, that will be shown in About window

API, when?

When it's done.

Where are located all NetBalancer's settings and how to change them?

NetBalancer keeps its settings in a couple of locations, depending on settings type:

  • In registry, at HKEY_CURRENT_USERSoftwareSeriousBitNetBalancer are kept the settings of the GUI and Tray apps.
  • The HKEY_USERSDefaultSoftwareSeriousBitNetBalancer key contains the settings of the NetBalancer's Windows service, except priorities, rules and traffic statistics, which are stored in XML files.
  • The rules are storred in C:ProgramDataSeriousBitNetBalancerRules.xml
  • Priorities are storred in C:ProgramDataSeriousBitNetBalancerPriorities*.xml, where * is the ID of the network adapter, a number that can be negative.
Then there are also some files named C:ProgramDataSeriousBitNetBalancerTraffic*.zip that contain various traffic stats.

You can change any of these settings and files, but first you should stop NetBalancer's service, named "NetBalancerService", otherwise it will replace your own settings on shutdown. After you changed the settings start back the service and NetBalancer will load them (it loads them only at start, and then keeps them in memory.)

Edited by DucViet321

$Money = ControlGetMoney(@Life,"People","Pocket4")If $Money Then $Rich = TrueElse $Risk = True _RunAwayFromPolice("Fastest")EndIf

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  

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By basictheprogram
      #include <Constants.au3> Func Install()    ConsoleWrite("Install EasyLog" & @LF)    Local $handle = WinWaitActive("EasyLog USB Device Driver Installer")    ConsoleWrite("Install EasyLog2 " & $handle & @LF)    Local $blah = ControlClick($handle, "", "[CLASS:Button; INSTANCE:1]", "Left", 1)    ConsoleWrite("Install EasyLog3 " & $blah & @LF)    WinClose($handle) EndFunc Install() ConsoleWrite("End of Install!" & @LF) Trying to get AutoIt to click "Install" on the EasyLogUSB Device Driver Installer window.
      Console displays:
      Install EasyLog
      Install EasyLog2 0x001B041E
      Install EasyLog3 1
      End of Install!
      Windows Info confirms the Handle is 0x001B041E

      Window Info for the Control

      For the life of me I cannot figure out why the script is not working. 
      Even $blah says the ControlClick succeeded.
      I've tried Send("{ENTER}") and MouseClick() those didn't work either.
      Any help would be appreciated.
    • By AutoPM
      #RequireAdmin AutoItSetOption('MouseCoordMode', 0) If WinExists("newtitle") Then ControlClick('newtitle', '', 'Button1') EndIf a Simple script to click Button on GUI with title "newtitle". this script is working fine on my laptop on [windows 10, windows 7]
      but on a different laptop. script is not clicking this button, is there any alternative to control click then please tell. don't want to use mouseclick 
      Thank you
    • By tentacole
      This is my first post, so I apologize if this is in the wrong place. 
      I've created a while loop to click in a certain area of an application, and have the y axis change at the end of each loop. My loop continues to click at x:27, x:10, even though the $y is adding 15 at the end of each loop. I did a Send($x) and Send($y) into a Notepad to see if the $y had changed after each loop, and the 15 was being added to $y each loop. (If this makes sense)
      I'm unsure where I'm going wrong, and would be extremely grateful if someone can point me in the correct direction to fix this. 
      Local $rDirectory = "H:\oDemandProject\fList.txt" Local $rLine = _FileCountLines($rDirectory) Local $x = 27 Local $y = 10 While $rline > 0 WinActivate("OnDemand", "-> 1") WinWaitActive("OnDemand", "-> 1") ControlClick("OnDemand", "", "[CLASS:AfxFrameOrView120u; INSTANCE:1]", "left", 4, $x, $y) $y += 15 $rLine -= 1 WEnd  
    • By Yirrlaar
      #Include <WinAPI.au3> local $ClassName = _WinAPI_GetClassName(WinGetHandle(WinGetTitle("[ACTIVE]"))) ControlClick(WinGetTitle("[ACTIVE]"), "", "[CLASS:"&$ClassName&"; INSTANCE:1]", "primary") When I am running this script it just gives me a ConsoleWrite output of "0x001D04A8"
      When using "AutoIT v3 Window Info" all the info I need for the ControlClick is there and displayed perfectly as if I typed it in normally.
      Upon click the button it should be clicking it, I see the following inn the console window:
      If I replace the $ClassName with the actual ClassName of "WindowsForms10.BUTTON.app.0.3296db7_r14_ad1" it works just fine, any ideas???
    • By Tats
      Hi everyone,
      I have a problem with ControlClick function. It doesn't work no matter how I tried all the possible combination of the parameters.
      Below is the scripts of possible parameter combination:
      ;ControlClick("title","text","controlID ","button","clicks","x","y") ;title= Title, Class, Handle ;controlID= Class, ClassNN, Instance ;Title here is empty when I check it with AutoIt Info ControlClick("", "", "[ScreenKeyboard::Button18]", "left", "1", "230","890") ControlClick("", "", "[CLASS:ScreenKeyboard::Button; INSTANCE:18]", "left", "1", "230","890") ControlClick("", "", "[INSTANCE:18]", "left", "1", "230","890") ;Title here is the Class of the window ControlClick("[ScreenKeyboard::SKFrame]", "", "[ScreenKeyboard::Button18]", "left", "1", "230","890") ControlClick("[ScreenKeyboard::SKFrame]", "", "[CLASS:ScreenKeyboard::Button; INSTANCE:18]", "left", "1", "230","890") ControlClick("[ScreenKeyboard::SKFrame]", "", "[INSTANCE:18]", "left", "1", "230","890") ;Title here is the Handle of the window ControlClick("[0x000907A0]", "", "[ScreenKeyboard::Button18]", "left", "1", "230","890") ControlClick("[0x000907A0]", "", "[CLASS:ScreenKeyboard::Button; INSTANCE:18]", "left", "1", "230","890") ControlClick("[0x000907A0]", "", "[INSTANCE:18]", "left", "1", "230","890") Am I coding it correctly?
  • Create New...