Jump to content

How to randomize ?


Recommended Posts

ControlClick("program", "", '[CLASS:WindowsForms; INSTANCE:2]' , "left")

I want to randomize "INSTANCE" from 1 - 100. So, I have code:

$instance = random(1,100)
ControlClick("program", "", '[CLASS:WindowsForms; INSTANCE:' & '$instance' & ']' , "left")

But my program don't work. Can you help me, please ?

Edited by kegiaumat055
Link to comment
Share on other sites

think u mit meed to check wat contrl extists

use somthing like this i guess.

Opt("WinTitleMatchMode", 4)
Global $KillList[3][4] = [ _
        ["this window",              "class 1","calss 2","class 3"], _
        ["that window",          "class 1","calss 2","class 3"], _
        ["another window",      "class 1","calss 2","class 3"] _
]
Global $CTRLs = ''
Global $WinList
AdlibRegister("Monitor",500)
While 1
    Sleep(500)
WEnd
Func Monitor()
    $WinList = WinList()
    For $I = 0 To $WinList[0][0]
        For $V = 0 To UBound($KillList,1) - 1
            If StringInStr($WinList[$I][0],$KillList[$V][0]) Then
                $CTRLs = _WinGetControls($WinList[$I][0])
                For $R = 0 To UBound($CTRLs) - 1
                    For $E = 1 To UBound($KillList,2) - 1
                        If StringInStr($CTRLs[$R][0],$KillList[$V][$E]) Then
                            ;
       ;
                        EndIf
                    Next
                Next
            EndIf
        Next
    Next
EndFunc
Func _WinGetControls($Title, $Text = "")
    Local $WndControls, $aControls, $sLast = "", $n = 1
    $WndControls = WinGetClassList($Title, $Text)
    $aControls = StringSplit($WndControls, @CRLF)
    Dim $aResult[$aControls[0] + 1][2]
    For $i = 1 To $aControls[0]
        If $aControls[$i] <> "" Then
            If $sLast = $aControls[$i] Then
                $n += 1
            Else
                $n = 1
            EndIf
            $aControls[$i] &= $n
            $sLast = StringTrimRight($aControls[$i], 1)
        EndIf
        If $i < $aControls[0] Then
            $aResult[$i][0] = $aControls[$i]
        Else ; last item in array
            $aResult[$i][0] = WinGetTitle($Title) ; return WinTitle
        EndIf
        $aResult[$i][1] = ControlGetHandle($Title, $Text, $aControls[$i])
    Next
    $aResult[0][0] = "ClassnameNN"
    $aResult[0][1] = "Handle"
    Return $aResult
EndFunc   ;==>_WinGetControls
Link to comment
Share on other sites

Remove the quotes around $instance e.g. '$instance' to $instance, also please read the Help file about variables too.

UDF List:

 
_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_ArrayFilter/_ArrayReduce_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 22/04/2018

Link to comment
Share on other sites

$instance = random(1,100)
ControlClick("program", "", '[CLASS:WindowsForms; INSTANCE:' & '$instance' & ']' , "left")

As Guinness said The Above is Wrong since U have Put the Variable In the Quotes, Inside Quote it will be Treated as a String And not a Variable

Try This 1

$instance = random(1,100)
ControlClick("program", "", '[CLASS:WindowsForms; INSTANCE:' & $instance & ']' , "left")

If U get it Please Reply.........

Regards

Phoenix XL

Edited by PhoenixXL

My code:

PredictText: Predict Text of an Edit Control Like Scite. Remote Gmail: Execute your Scripts through Gmail. StringRegExp:Share and learn RegExp.

Run As System: A command line wrapper around PSEXEC.exe to execute your apps scripts as System (LSA). Database: An easier approach for _SQ_LITE beginners.

MathsEx: A UDF for Fractions and LCM, GCF/HCF. FloatingText: An UDF for make your text floating. Clipboard Extendor: A clipboard monitoring tool. 

Custom ScrollBar: Scroll Bar made with GDI+, user can use bitmaps instead. RestrictEdit_SRE: Restrict text in an Edit Control through a Regular Expression.

Link to comment
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
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...