Jump to content

danginkgo

Members
  • Posts

    2
  • Joined

  • Last visited

danginkgo's Achievements

Seeker

Seeker (1/7)

0

Reputation

  1. Yes, you are right , this works . Thanks for help. I finally figured this out. http://stackoverflow.com/questions/40759398/autoit3-could-not-send-text-to-windows-browse-dialog-on-virtual-machine
  2. I am trying to handle a Windows dialog on a Windows 10 x64 virtual machine (vcloud). The dialog is opened by a web site to upload files. Here is the script: #include <FileConstants.au3> #include <MsgBoxConstants.au3> $files = "" For $i = 1 To UBound($CmdLine) - 1 $files &= '"' & $CmdLine[$i] & '" ' Next $handler = WinWait("[REGEXPTITLE:(Open|Upload)]","",10) If $handler Then writeToFile("window found " & $handler) If WinActive($handler) Then writeToFile("window is active " & $handler) Send($files) Send("{ENTER}") Else writeToFile("window is not active " & $handler) writeToFile("activate window " & $handler) If activateWindow($handler) Then writeToFile("activate window succeeded") Send($files) Send("{ENTER}") Else writeToFile("failed to activate ") EndIf EndIf Else writeToFile("window not found after 10s") EndIf Func activateWindow($h) writeToFile("Set state SHOW: " & WinSetState($h,"",@SW_SHOW)) writeToFile("WinActivate: " & WinActivate($h) return WinWaitActive($h,"",10) EndFunc Func writeToFile($text) Local Const $sFilePath = "C:\test\autoIT\x.out" Local $hFileOpen = FileOpen($sFilePath, $FO_READ + $FO_APPEND) If $hFileOpen = -1 Then MsgBox($MB_SYSTEMMODAL, "", "An error occurred when reading/writing the file.") Return False EndIf FileWriteLine($hFileOpen, $text) FileClose($hFileOpen) Return True EndFunc ;==>Example If I open a remote desktop connection to that virtual machine the script works fine and the upload window is activated ad I can send text to it. If I minimize the remote desktop connection window the autoit script can't activate the upload window. Here is the output I get for both cases: ___________________________________________ window found 0x00040576 window is not active 0x00040576 activate window 0x00040576 Set state ENABLE: 1 Set state SHOW: 1 WinActivate: 0x00040576 activate window succeeded ___________________________________________ ___________________________________________ window found 0x000C058C window is not active 0x000C058C activate window 0x000C058C Set state ENABLE: 1 Set state SHOW: 1 WinActivate: 0 failed to activate ___________________________________________ Any clues on this? Is there other way that ? I can send text to that window?
×
×
  • Create New...