Jump to content

Recommended Posts

Posted

#include "InputHeader_BMP.au3"

Local $strErrorLogName = 'winapp_ArithImageConstCombined_BMP.txt'
Local $strErrorLogPathName = $strErrorLogPath&$strErrorLogName

Global $strConst = '10'
Global $iSleepTime = 500

Global $file = FileOpen($strErrorLogPathName,2)
if($file == -1) Then
    MsgBox(0, "Error", "Unable to open the file")
    Exit
EndIf

;Run($strApplicationPath)
for $iOperation = 0 to 15 Step 1
    Main($strInputImgPath1k,$strName1k,$strName8bits,$iOperation)
    Main($strInputImgPath2k,$strName2k,$strName8bits,$iOperation)
    Main($strInputImgPath4k,$strName4k,$strName8bits,$iOperation)
    Main($strInputImgPath10,$strName10,$strName8bits,$iOperation)
    Main($strInputImgPath512,$strName512,$strName8bits,$iOperation)

    Main($strInputColorImgPath1k,$strName1k,$strNameColor,$iOperation)
    Main($strInputColorImgPath2k,$strName2k,$strNameColor,$iOperation)
    Main($strInputColorImgPath4k,$strName4k,$strNameColor,$iOperation)
    Main($strInputColorImgPath10,$strName10,$strNameColor,$iOperation)
    Main($strInputColorImgPath512,$strName512,$strNameColor,$iOperation)
Next
#cs
Local $strActive = WinActive("winapp", "Ready")
if @error == 0 Then
    Winclose("winapp")
EndIf
#ce
Func Main($strInpPath,$strImgName,$strOutPath,$iOperation)
Local $reset = 0;
Local $reset1 = 0;
;Local $a = WinWaitActive("winapp", "Ready")
Local $a = WinWait("winapp", "Ready")
if $a == 0 Then
    FileWriteLine($file,"Run-winapp.exe: Unable to Open winapp")
    FileWriteLine($file," ")
Else
    WinActivate($a)
    FileWriteLine($file,"Run-winapp.exe: Application is running")
    FileWriteLine($file," ")
    If($iOperation == 0) Then
        FileWriteLine($file,":::::::::::::ARITHMETIC ADDITION:::::::::::::")
    ElseIf($iOperation == 1) Then
        FileWriteLine($file,":::::::::::::ARITHMETIC SUBTRACTION:::::::::::::")
    Elseif($iOperation == 2) Then
        FileWriteLine($file,":::::::::::::ARITHMETIC MULTIPLICATION:::::::::::::")
    ElseIf($iOperation == 3) Then
        FileWriteLine($file,":::::::::::::ARITHMETIC DIVISION:::::::::::::")
    ElseIf($iOperation == 4) Then
        FileWriteLine($file,":::::::::::::ROTATE LEFT:::::::::::::")
    ElseIf($iOperation == 5) Then
        FileWriteLine($file,":::::::::::::ROTATE RIGHT:::::::::::::")
    ElseIf($iOperation == 6) Then
        FileWriteLine($file,":::::::::::::SHIFT LEFT:::::::::::::")
    ElseIf($iOperation == 7) Then
        FileWriteLine($file,":::::::::::::SHIFT RIGHT:::::::::::::")
    ElseIf($iOperation == 8) Then
        FileWriteLine($file,":::::::::::::LESS THAN:::::::::::::")
    ElseIf($iOperation == 9) Then
        FileWriteLine($file,":::::::::::::LESS THAN AND EQUAL TO:::::::::::::")
    ElseIf($iOperation == 10) Then
        FileWriteLine($file,":::::::::::::EQUAL TO:::::::::::::")
    ElseIf($iOperation == 11) Then
        FileWriteLine($file,":::::::::::::NOT EQUAL TO:::::::::::::")
    ElseIf($iOperation == 12) Then
        FileWriteLine($file,":::::::::::::GREATER THAN:::::::::::::")
    ElseIf($iOperation == 13) Then
        FileWriteLine($file,":::::::::::::GREATER THAN EQUAL TO:::::::::::::")
    ElseIf($iOperation == 14) Then
        FileWriteLine($file,":::::::::::::COMPUTE MAXIMUM:::::::::::::")
    ElseIf($iOperation == 15) Then
        FileWriteLine($file,":::::::::::::COMPUTE MINIMUM:::::::::::::")
    EndIf

    For $i = 1 to 4 Step 1
        Local $str1 = String($i)
        Local $str2 = $strImgName
        Local $str3 = $str2&$str1
        Local $str4 = '.bmp'
        Local $str5 = $str3&$str4

        $ctrlClk = ControlClick("winapp","",59398,"left",1,$iXClickFile,$iYClickFile)
        If $ctrlClk == 0 Then
            FileWriteLine($file,"Controlclick file failure")
             CtrlClick()
        Else
            FileWriteLine($file,"Controlclick File Success")
            sleep($iSleepTime)
            $ctrlClk1 = ControlClick("winapp","",59398,"left",1,$iXClickOpen,$iYClickOpen)
            If $ctrlClk1 == 0 Then
                FileWriteLine($file,"Controlclick Open Failure")
            Else
                FileWriteLine($file,"Controlclick Open Success")
                Local $a1 = WinWait("Open","")
                if $a1 == 0 Then
                    FileWriteLine($file, "Control-Open:   Open Image button Fail")
                Else
                    WinActivate($a1)
                    FileWriteLine($file, "Control-Open:   Open Image button Success")
                    sleep($iSleepTime)
                    Local $str6 = $strInpPath&$str5
                    ;$strOpenHandle = WinGetHandle("Open")
                    sleep($iSleepTime)
                    Local $strOpenIm1 = ControlSetText("Open", "","Edit1",$str6)
                    ;FileWriteLine($file,$str6)
                    if($strOpenIm1 == 0) Then
                        FileWriteLine($file,"Error: Set Image Path Fail")
                        sleep($iSleepTime)
                        Send("{ESC}")
                    Elseif($strOpenIm1 == 1) Then
                        FileWriteLine($file,"Set Image1 Path Success")
                        send("{Enter}")
                        sleep($iSleepTime)
                        Local $str7 = 'Warning:  '&$str5&' is already open'
                        Local $str8 = $str5&' is ready for the process'
                        Local $a2 = WinExists("winapp","This Window is already open")
                        if $a2 == 1 Then
                            FileWriteLine($file,$str7)
                            send("{Enter}")
                            $reset = 0
                        ElseIf $a2 == 0 Then
                        ;FileWriteLine($file,$str8)
                        $reset = 1
                    EndIf
                    Local $a11 = WinExists("winapp","Unable to load the image.")
                    if $a11 == 1 Then
                        FileWriteLine($file,"Error: Unable to Load Image")
                        send("{ENTER}")
                        $reset1 = 0
                    Else
                        $reset1 = 1
                    EndIf
                    if(($reset == 1) AND($reset1 == 1)) Then
                        Local $var = ControlGetText( "[Active]", "", "[ID:65280]" )
                        $process = 'Processing Image: '&$var
                        FileWriteLine($file,$process)
                        Global $iHandle1 = ControlGetHandle("[Active]","","[ID:65280]")
                        if(@error == 1) Then
                            FileWriteLine($file,"Cannot Get Handle")
                        Else
                            ControlHide("[Active]","","[ID:65280]")
                            ArithmeticOperation($str3,$strOutPath,$iOperation)
                        EndIf
                    EndIf
                    FileWriteLine($file,"")
                EndIf
            EndIf
            EndIf
            EndIf
        Winclose($iHandle1)

    Next
EndIf
EndFunc

Func CtrlClick()
Local $ctrlClk = 0
While ($ctrlClk <> 1)
$ctrlClk = ControlClick("winapp","",59398,"left",1,$iXClickFile,$iYClickFile)
FileWriteLine($file,$ctrlClk)
WEnd
EndFunc

Func ArithmeticOperation($str3,$strOutPath,$iType)
    Local $strOut =  $strOutputImgPath&$strOutPath&$str3
    Local $reset = 1
    $ctrlClk2 = ControlClick("winapp","",59398,"left",1,$iXClickOperation,$iYClickOperation)
    If $ctrlClk2 == 0 Then
        FileWriteLine($file,"Controlclick Operation Failure")
    Else
        FileWriteLine($file,"Controlclick Operation Success")
        Sleep($iSleepTime)
        $ctrlClk3 = ControlClick("winapp","",59398,"left",1,$iXClickArithmetic,$iYClickArithmetic)
        If $ctrlClk3 == 0 Then
            FileWriteLine($file,"ControlClick Arthematic Operation Failure")
        Else
            FileWriteLine($file,"ControlClick Arithmetic Operation Sucess")
            sleep($iSleepTime)
            Local $winArithmetic = WinGetHandle("winapp","Arithmetic Operations")
            If @error Then
                FileWriteLine($file, "Arithmetic Operations Menu Not Available")
            Else
                $strCombo3 = $str3&'.bmp'
                ControlCommand($winArithmetic, "", "ComboBox2", "SetCurrentSelection", $iType)
                if @error == 1 Then
                    FileWriteLine($file,'Error: ComboBox2 Fail')
                Else
                    FileWriteLine($file,'ComboBox2: Select Add Success')
                EndIf

                Sleep($iSleepTime)
                ControlCommand($winArithmetic,"", "ComboBox3", "ShowDropDown", "")
                sleep($iSleepTime)
                ;ControlCommand($winArithmetic,"", "ComboBox3",  "SetCurrentSelection", 0)
                ControlCommand($winArithmetic, "", "ComboBox3", "SelectString", $strCombo3)
                If @error == 1 Then
                    FileWriteLine($file, 'Error: ComboBox3 Fail')
                Else
                FileWriteLine($file, 'ComboBox3: Select Image1 Success')
                ControlClick($winArithmetic,"","ComboBox3")
                ;sleep($iSleepTime)
                EndIf

                Local $strbuttoncheck =  ControlCommand($winArithmetic,"","Button11","IsChecked", "")
                if ($strbuttoncheck == 1) Then
                    FileWriteLine($file, "Check Box is already checked")
                    Local $setText = ControlSetText($winArithmetic,"","Edit1",$strConst)
                    if ($setText == 0) Then
                            FileWriteLine($file,"Error: Set Constant value Fail")
                    Else
                            FileWriteLine($file,"Set Constant Value Success")
                    EndIf
                Else
                    ControlCommand($winArithmetic,"", "Button11", "Check", "")
                    sleep($iSleepTime)
                    if (@error == 1)Then
                        FileWriteLine($file,"Error: Check Button Fail")
                    Else
                        FileWriteLine($file,"Check Buttton Pass")
                        Local $setText = ControlSetText($winArithmetic,"","Edit1",$strConst)
                        if ($setText == 0) Then
                                FileWriteLine($file,"Error: Set Constant value Fail")
                        Else
                                FileWriteLine($file,"Set Constant Value Success")
                        EndIf
                    EndIf
                EndIf

                ControlCommand($winArithmetic,"", "ComboBox5", "ShowDropDown", "")
                sleep($iSleepTime)
                ControlCommand($winArithmetic,"", "ComboBox5","SelectString", 'NewImage')
                If @error == 1 Then
                    FileWriteLine($file, 'Error: ComboBox5 Fail')
                Else
                    FileWriteLine($file, 'ComboBox5: Select OutputImage Success')
                    ControlClick($winArithmetic,"","ComboBox5")
                    sleep($iSleepTime)
                EndIf

                Local $strOk = ControlClick($winArithmetic,"","Button7")
                If $strOk == 0 Then
                    FileWriteLine($file, 'Error: Click Button7 Fail')
                Else
                    FileWriteLine($file, 'Button7: Click OK Success')
                    sleep($iSleepTime)
                    Local $strWarnOut = WinExists("winapp","Please select input image.")
                    if ($strWarnOut == 1) Then
                        FileWriteLine($file,"Warning: Select Input Image")
                        ;send("{ENTER}")
                        ControlClick("winapp","","Button1")
                        sleep($iSleepTime)
                        ControlClick($winArithmetic,"","Button6")
                        sleep($iSleepTime)
                        WinClose($iHandle1)
                        ;MouseClick("Left",731,168,1)
                        ;sleep($iSleepTime)
                        $reset = 0
                    EndIf

                    Local $strWarnOut1 = WinExists("winapp", "Please select output.")
                    if ($strWarnOut1 == 1) Then
                        FileWriteLine($file,"Warning: Select Output Image")
                        ControlClick("winapp","","Button1")
                        ;send("{ENTER}")
                        sleep($iSleepTime)
                        ControlClick($winArithmetic,"","Button6")
                        sleep($iSleepTime)
                        WinClose($iHandle1)
                        ;sleep($iSleepTime)
                        $reset = 0
                    EndIf

                    Local $strWarnOut2 = Winexists("winapp","Operation failed")
                    if($strWarnOut2 == 1) Then
                        FileWriteLine($file,"Error: Operation Failed")
                        ControlClick("winapp","","Button1")
                        ;send("{ENTER}")
                        sleep($iSleepTime)
                        ControlClick($winArithmetic,"","Button6")
                        sleep($iSleepTime)
                        WinClose($iHandle1)
                        ;MouseClick("Left",731,168,1)
                        ;sleep($iSleepTime)
                        $reset = 0
                    EndIf

                    Local $strWarnOut3 = WinExists("winapp","Provide a valid Constant Value. Valid Range is 0-65536.")
                    if($strWarnOut3 == 1) Then
                        FileWriteLine($file,"Warning: Enter a Valid Constant")
                        ;send("{ENTER}")
                        ControlClick("winapp","","Button1")
                        sleep($iSleepTime)
                        ControlClick($winArithmetic,"","Button6")
                        sleep($iSleepTime)
                        WinClose($iHandle1)
                        $reset = 0
                    EndIf
                    Local $strWarnOut4 = WinExists("winapp","Provide a valid Constant Value. Valid Range is 0.0 - 255.0")
                    if($strWarnOut4 == 1) Then
                        FileWriteLine($file,"Warning: Enter a Valid Constant")
                        ;send("{ENTER}")
                        ControlClick("winapp","","Button1")
                        sleep($iSleepTime)
                        ControlClick($winArithmetic,"","Button6")
                        sleep($iSleepTime)
                        WinClose($iHandle1)
                        $reset = 0
                    EndIf
                    Local $strWarnOut5 = WinExists("winapp", "Image data is null.")
                    if ($strWarnOut5 == 1) Then
                        FileWriteLine($file,"Warning:Image data is null.")
                        ;send("{ENTER}")
                        ControlClick("winapp","","Button1")
                        $winHandle2 = ControlGetHandle("[Active]","","[ID:65281]")
                        if @error == 1 Then
                            FileWriteLine($file,"Error: Cannot Get the Handle of Image1")
                        Else
                            FileWritELine($file,"Get Handle of nullImage Success")
                            Sleep($iSleepTime)
                            $x = WinClose($winHandle2)
                            If ($x == 1) Then
                                FileWriteLine($file,"Pass")
                            Else
                                FileWriteLine($file,"Fail")
                            EndIf
                        EndIf
                        ControlClick($winArithmetic,"","Button6")
                        sleep($iSleepTime)
                        WinClose($iHandle1)
                        $reset = 0
                    EndIf
                    Local $strWarnOut6 = WinExists("winapp", "Unable to save image")
                    if ($strWarnOut6 == 1) Then
                        FileWriteLine($file,"Warning:Unable to save image")
                        ;send("{ENTER}")
                        ControlClick("winapp","","Button1")
                        sleep($iSleepTime)
                        ControlClick($winArithmetic,"","Button6")
                        sleep($iSleepTime)
                        WinClose($iHandle1)
                        sleep($iSleepTime)
                        $reset = 0
                    EndIf
                    Local $strWarnOut7 = WinExists("winapp", "Encountered an improper argument.")
                    if ($strWarnOut7 == 1) Then
                        FileWriteLine($file,"Warning:Encountered an improper argument.")
                        ;send("{ENTER}")
                        ControlClick("winapp","","Button1")
                        sleep($iSleepTime)
                        $reset = 0
                    EndIf
                    Local $WarnOut8 = WinExists("winapp","Unsupported image format or image load failed")
                    if($WarnOut8 == 1) Then
                        FileWriteLine($file,"Warning:Unsupported image format or image load failed")
                        Local $warnOk4 = ControlClick("winapp","Unsupported image format or image load failed","Button1")
                        if $warnOk4 == 1 Then
                            FileWriteLine($file,"Click Ok: Success")
                            Sleep($iSleepTime)
                        Else
                            FileWriteLine($file,"Warning: Click Ok Fail")
                        EndIf
                        $reset = 0
                    EndIf
                    ControlClick($winArithmetic,"","Button6")
                    sleep($iSleepTime)
            If $reset == 1 Then
            Sleep($iSleepTime)
                $ctrlClk4 = ControlClick("winapp","",59398,"left",1,$iXClickFile,$iYClickFile)
                If $ctrlClk4 == 0 Then
                    FileWriteLine($file,"Controlclick file failure")
                Else
                    FileWriteLine($file,"Controlclick file success")
                    sleep($iSleepTime)
                    $ctrlClk5 = ControlClick("winapp","",59398,"left",1,$iXClickSaveAs,$iYClickSaveAs)
                    If $ctrlClk5 == 0 Then
                        FileWriteLine($file,"ControlClick Save failure ")
                    Else
                        FileWriteLine($file,"Controlclick Save Success")
                        sleep($iSleepTime)
                        Local $winSaveAs = WinWait("Save As","")
                        if $winSaveAs == 0 Then
                            FileWriteLine($file, "Control-SaveAs: Cannot Open Save Window")
                        Else
                    WinActivate($winSaveAs)
                    FileWriteLine($file, "Control-SaveAs: Open Save Window ")
                    if($iType == 0) Then
                        $strType = '_Add.bmp'
                    Elseif ($iType == 1) Then
                        $strType = '_Sub.bmp'
                    Elseif ($iType == 2) Then
                        $strType = '_Mul.bmp'
                    Elseif ($iType == 3) Then
                        $strType = '_Div.bmp'
                    Elseif ($iType == 4) Then
                        $strType = '_RotateLeft.bmp'
                    Elseif ($iType == 5) Then
                        $strType = '_RotateRight.bmp'
                    Elseif ($iType == 6) Then
                        $strType = '_ShiftLeft.bmp'
                    Elseif ($iType == 7) Then
                        $strType = '_ShiftRight.bmp'
                    Elseif ($iType == 8) Then
                        $strType = '_LessThan.bmp'
                    Elseif ($iType == 9) Then
                        $strType = '_LessThanEqualTo.bmp'
                    Elseif ($iType == 10) Then
                        $strType = '_EqualTo.bmp'
                    Elseif ($iType == 11) Then
                        $strType = '_NotEqualTo.bmp'
                    Elseif ($iType == 12) Then
                        $strType = '_GreaterThan.bmp'
                    Elseif ($iType == 13) Then
                        $strType = '_GreaterThanEqualto.bmp'
                    Elseif ($iType == 14) Then
                        $strType = '_ComputeMaximum.bmp'
                    Elseif ($iType == 15) Then
                        $strType = '_ComputeMinimum.bmp'
                    EndIf
                    ;$strSave = $str3&'_const_'&$strConst&$strType
                    $strSaveimagename = $str3&'_const_'&$strConst&$strType
                    $strSave = $strOut&'_const_'&$strConst&$strType
                    ;$strSavePath = $strOutPath&$strSave
                    $strSavePath = $strSave
                    Local $strSave = ControlSetText("Save As", "","Edit1",$strSavePath)
                    if ($strSave == 0) Then
                        FileWriteLine($file, 'Error:SaveAs Fail-Cannot Save Image')
                    Else
                        FileWriteLine($file, 'Save Image success')
                        sleep($iSleepTime)
                        ;ControlClick($winSaveAs,"","Button1")
                        ControlClick("SaveAs","",Send("!s"))
                        sleep($iSleepTime)
                        Local $var3 = ControlGetText( "[ACTIVE]","", "[ID:65280]" )
                        $process2 = 'Output Image: '&$var3
                        FileWriteLine($file,$process2)
                        Global $iHandle3 = ControlGetHandle($strSaveimagename,"","")
                        ;Global $iHandle3 = ControlGetHandle("[ACTIVE]","","[ID:65280]")
                        if(@error == 1) Then
                            FileWriteLine($file,"Cannot Get Handle")
                            Sleep($iSleepTime)
                            Local $i = 0
                                    While($i < 2)
                                        $GetHandle = ControlGetHandle("[ACTIVE]","","[ID:65280]")
                                        if(@error == 1)Then
                                            FileWriteLine($file,"Cannot Get Handle"&$i)
                                            WinClose($GetHandle)
                                        EndIf
                                    WEnd
                        Else
                            WinClose($iHandle3)
                            Sleep($iSleepTime)
                            ControlClick($winArithmetic,"","Button8")
                            Sleep($iSleepTime)
                            WinClose($iHandle1)
                        EndIf
                        EndIf
                    EndIf
                EndIf
                EndIf
                    EndIf
                EndIf
            EndIf
        EndIf
    EndIf
EndFunc
Global $Paused
HotKeySet("{PAUSE}", "TogglePause")
AutoItSetOption("TrayIconDebug",1)
Opt("WinTitleMatchMode", 2)

$strInputImgPath1k = 'C:\1K\'
$strInputImgPath2k = 'C:\2K\'
$strInputImgPath4k = 'C:\4K\'
$strInputImgPath10 = 'C:\10\'
$strInputImgPath512 = 'C:\512\'

$strInputColorImgPath1k = 'C:\1K\'
$strInputColorImgPath2k = 'C:\2K\'
$strInputColorImgPath4k = 'C:\4K\'
$strInputColorImgPath10 = 'C:\10\'
$strInputColorImgPath512 = 'C:\512\'

$strOutputImgPath = 'C:\Newfolder\'

$strErrorLogPath = 'C:\Newfolder\'

$strApplicationPath = "C:\Program Files\winapp.exe"

$strName1k = '1K_image'
$strName2k = '2K_image'
$strName4k = '4K_image'
$strName10 = '10_image'
$strName512 = '500_image'

$strNameColor = '24bit_'
$strName8bits = '8bit_'

$iXClickFile = 70
$iYClickFile = 48
$iXClickOpen = 68
$iYClickOpen = 83
$iXClickSaveAs = 154
$iYClickSaveAs = 85
$iXClickOperation = 140
$iYClickOperation = 50
$iXClickArithmetic = 37
$iYClickArithmetic = 84

Func TogglePause()
    $Paused = Not $Paused
    While $Paused
        Sleep(100)
        ToolTip('Script is "Paused"', 0, 0)
    WEnd
    ToolTip("")
EndFunc

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
  • Recently Browsing   0 members

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