Sign in to follow this  
Followers 0
MARAN

Passing shortcut parameters to AutoIt

6 posts in this topic

#1 ·  Posted (edited)

Hello folks, how are you going?

Well, is possible to make my script read the shortcut parameters?

Shortcut example:

"X:\SomePlaceOnMyComputer\MyScript.exe" -debug 1

Script example:

; _GetParams syntax: Param Name, Param Value (optional: if 1, _GetParams will return the param value otherwise will return 1 for "exists" and 0 for "not exists")
If _GetParams("-debug", "1") = 1 Then MsgBox(0, "_GetParams test", 'You added the param with the value "' & _GetParams("-", "debug", "1") = 1 & '".')

Hope somebody answer me soon.

Regards, MARAN.

Merry Christmas !

Edited by MARAN

Share this post


Link to post
Share on other sites



Maran,

look at the <Using Autoit - Command Line Parameters> page in the Help file. ;)

m23


Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind._______My UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Share this post


Link to post
Share on other sites

#3 ·  Posted (edited)

Maran,

look at the <Using Autoit - Command Line Parameters> page in the Help file. ;)

m23

Isn't exacly what I want, but I'm gonna try to use $CmdLineRaw with StringSplit() and StringInStr().

Thank you.

//Edit

Now I need to know which is the function that tells me the last index of an array.

Example:

Dim $array[3] = [15, 20, 30, 35]
Dim $message
For $i = 0 To _ArrayLastIndex($array)
     $message &= '& @CRLF & $array[$i]'
Next
MsgBox(0, "Values at $array", "$array have " & _ArrayLastIndex($array) + 1 & " indexes, with the values:" & $message)

It "should" show a messagebox with the following text:

$array have 4 indexes, with the values:
15
20
30
35
Edited by MARAN

Share this post


Link to post
Share on other sites

MARAN,

Look at UBound in the Help file - but be careful, it gives you the number of elements, not the highest. For that you need to use

$iTopElement = UBound($aArray) - 1

because arrays start with the [0] element. ;)

M23


Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind._______My UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Share this post


Link to post
Share on other sites

#5 ·  Posted (edited)

MARAN,

Look at UBound in the Help file - but be careful, it gives you the number of elements, not the highest. For that you need to use

$iTopElement = UBound($aArray) - 1

because arrays start with the [0] element. ;)

M23

Thank you dude.

A cookie for you: http://www.baixaki.com.br/imagens/materias/cookie1.jpg

#Solved

Edited by MARAN

Share this post


Link to post
Share on other sites

#6 ·  Posted (edited)

Func _GetCmdLineParam($sParam, $pValue = 0, $pDiv = " ", $vEqual = "=")
    Local $aSplitedCmdLine = StringSplit($CmdLineRaw, $pDiv, 1)
    Local $aCmdLineMax = UBound($aSplitedCmdLine) - 1

    If $pValue = 0 Then
        Local $bFound = 0

        For $i = 1 To $aCmdLineMax Step 1
            If $aSplitedCmdLine[$i] = $sParam Then $bFound = 1
        Next
        Return $bFound  
    ElseIf $pValue = 1 Then
        If Not $pDiv = $vEqual Then
            For $i = 1 To $aCmdLineMax Step 1
                If Not StringInStr($aSplitedCmdLine[$i], $sParam) = 0 Then
                    Local $aSplitedParamValue = StringSplit($aSplitedCmdLine[$i], $vEqual, 1)

                    Return $aSplitedParamValue[2]
                Else
                    Return "#error2"
                EndIf
            Next
        Else
            Return "#error1"
        EndIf
    EndIf
EndFunc

Edited by MARAN

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