Jump to content

Israel

Membros
  • Content count

    36
  • Joined

  • Last visited

Community Reputation

0 Neutro

About Israel

  • Rank
    Membro
  • Birthday 05/17/1996

Profile Information

  • Gender
    Not Telling
  • Location
    Minas Gerais
  1. Boa tarde! Estou utilizando as funções _IEFormElementSetValue() e _IEFormElementOptionSelect(). Ambas contém o parâmetro $fFireEvent que aciona os eventos onChange e onClick. Porém ao passar 1 no parâmetro $fFireEvent não está acionando o evento em minha página. Existe algo que bloqueia essa ação ? Obrigado!
  2. Ocultar o Mouse

    Boa tarde! Existe alguma forma de ocultar o mouse caso ele seja direcionado para fora da minha GUI ?? Att Israel
  3. BackEffect

    @Luigi, Parabéns pela sua UDF! Gostei muito e me ajudou muito. Só uma dúvida: eu consigo usar sua UDF pra elementos em uma página web ? Seria essencial ! O que acha ? Israel
  4. Comparar um digito na tela

    Jorge, Se for o que eu entendi você pode fazer assim : WinWaitActive("[CLASSE: JANELA]") ; ESPERA A JANELA FICAR ATIVA Send("{CTRLDOWN}{a}{CTRLUP}") ; seleciona os dados da tela Send("{CTRLDOWN}{c}{CTRLUP}") ; copia os dados da tela Local $tela = _ClipBoard_GetData($CF_TEXT) ; salva os dados capturados da tela em formato de texto Local $meuNum = "15456" ; depois utiliza a função StringInStr para verificar se existe esse número. if StringInStr($tela,$meuNum) <> 0 then ;;contem meu numero else ;; não contém meu numero endif Caso seja uma aplicação web pode ser feito assim: Local $tela = _IEBodyReadText($oIE) local $meuNumero = "125632" If StringInStr($tela, $meuNumero) Then ;; existe meu numero else ;; nao existe meu numero endif Att Israel
  5. Boa tarde! Estou criando um script para uma aplicação web que captura um elemento na tela e me retorna suas coordenadas. Porém não consigo capturar essas coordenas quando o usuário usa o scroll. Meu código: Func _Capturar() Local $doc = _IEDocGetObj($oie) If @error Then Exit(1) Else Local $aPos = MouseGetPos() ; posição do mouse na tela Local $evt = $doc.createEventObject() ; posição do evento Local $sl = $doc.body.scrollLeft Local $st = $doc.body.scrollTop Local $x = $aPos[0] - $oIE.document.parentwindow.screenLeft ; pega o elemento na posição do mouse Local $y = $aPos[1] - $oIE.document.parentwindow.screenTop Local $oElement = $doc.elementFromPoint($x, $y) return $oElement Endif endFunc Alguém sabe como me ajudar ? Obrigado!
  6. JScript, Como o Belini explicou acima, seria interessante acredito que para todos que usam o AutoIt ter uma UDF que trate algum erro depois que o script foi iniciado sem ter que ficar usando if @erro. Erros de sintaxe o editor nos mostra, mas erros durante a aplicação tem que ser tratados pelo if @erro, uma aplicação complexa exige muitos if @erro dando riscos de esquecer algum e etc
  7. @Belini, Talvez possa ser o que está querendo ou possa te dar uma luz. https://www.autoitscript.com/forum/topic/145096-_autoiterrortrapau3-udf-error-detection-in-autoit-scripts/ Israel
  8. Limitações do AutoIT

    A principal limitação do AutoIT é que só roda em Windows. Fora isso não vejo outra que te impeça de usar sua criatividade como descrita acima.
  9. Boa tarde a todos! Estou criando uma GUI que contém um determinado botão que exibe uma segunda GUI. Quando essa segunda GUI for fechada preciso que ela retorne para a primeira GUI. Meu código:  janPrincipal() Func janPrincipal()         Opt("GUICloseOnESC", 0)         Global $janP = GUICreate("janP", 400, 300)         Local $label = GUICtrlCreateLabel("teste", 7, 7, 396, 256, 0)         GUICtrlSetFont($label, 9, 400, 0, "Courier New")         Local $btnGui = GUICtrlCreateButton("Chamar outra GUI", 155, 255, 80, 30)         GUISetState(@SW_SHOW, $janP)         Do         Until GUIGetMsg() = $GUI_EVENT_CLOSE EndFunc Func jan2()         Opt("GUICloseOnESC", 0)         Global $jan2 = GUICreate("jan2", 400, 300)         Local $label = GUICtrlCreateLabel("teste 2", 7, 7, 396, 256, 0)         GUICtrlSetFont($label, 9, 400, 0, "Courier New")         Local $btnV = GUICtrlCreateButton("Voltar a GUI anterior", 155, 255, 80, 30)         GUISetState(@SW_SHOW, $jan2)         Do         Until GUIGetMsg() = $GUI_EVENT_CLOSE EndFunc Precisava que além do botão $btnV o evento $GUI_EVENT_CLOSE também me retornasse a GUI principal. Obrigado! RESOLVIDO! http://forum.autoitbrasil.com/index.php?/topic/275-fechar-so-uma-gui-quando-eu-clico-no-gui-event-close/
  10. Entendi. Recentemente fiz um script que está cheio de if @error. O que vc procura é algo necessário. Vou pesquisar por aqui também, mas se descobrir compartilha conosco.
  11. Dessa forma eu não conheço uma função que te descreve erros previsto pelo editor. O que vc pode fazer é contornar esse erro em seu script: #include <File.au3> $oMyError = ObjEvent("AutoIt.Error", "MyErrFunc") $aArray = _FileListToArray(@ScriptDir, "*.fake"); procura uma extensão que não existe If IsArray($aArray) Then ConsoleWrite("Retornou algo!" & @CRLF) MsgBox(4096, "Mensagem!", $aArray[0], 3); vai dar erro nesta linha Else ConsoleWrite("Não existe desse arquivo nesse diretório!" & @CRLF) EndIf Func MyErrFunc() MsgBox(0, "AutoItCOM Test", "We intercepted a COM Error !" & @CRLF & @CRLF & _ "err.description is: " & @TAB & $oMyError.description & @CRLF & _ "err.windescription:" & @TAB & $oMyError.windescription & @CRLF & _ "err.number is: " & @TAB & Hex($oMyError.number, 8) & @CRLF & _ "err.lastdllerror is: " & @TAB & $oMyError.lastdllerror & @CRLF & _ "err.scriptline is: " & @TAB & $oMyError.scriptline & @CRLF & _ "err.source is: " & @TAB & $oMyError.source & @CRLF & _ "err.helpfile is: " & @TAB & $oMyError.helpfile & @CRLF & _ "err.helpcontext is: " & @TAB & $oMyError.helpcontext) Local $err = $oMyError.number If $err = 0 Then $err = -1 SetError($err) EndFunc   ;==>MyErrFunc
  12. Belini, Seu script está dando erro porque ele não retorna nenhum arquivo, por isso não pode considerar array. No meu diretório tenho alguns arquivos txt e mudei a extensão para procurar arquivos txt e ai sim retornou algo. Coloca arquivos texto ai no seu diretório e tenta o código abaixo. #include <File.au3> $oMyError = ObjEvent("AutoIt.Error", "MyErrFunc") $aArray = _FileListToArray(@ScriptDir, "*.txt"); procura uma extensão que não existe MsgBox(4096, "Mensagem!", $aArray[0], 3); vai dar erro nesta linha Func MyErrFunc() MsgBox(0, "AutoItCOM Test", "We intercepted a COM Error !" & @CRLF & @CRLF & _ "err.description is: " & @TAB & $oMyError.description & @CRLF & _ "err.windescription:" & @TAB & $oMyError.windescription & @CRLF & _ "err.number is: " & @TAB & Hex($oMyError.number, 8) & @CRLF & _ "err.lastdllerror is: " & @TAB & $oMyError.lastdllerror & @CRLF & _ "err.scriptline is: " & @TAB & $oMyError.scriptline & @CRLF & _ "err.source is: " & @TAB & $oMyError.source & @CRLF & _ "err.helpfile is: " & @TAB & $oMyError.helpfile & @CRLF & _ "err.helpcontext is: " & @TAB & $oMyError.helpcontext) Local $err = $oMyError.number If $err = 0 Then $err = -1 SetError($err) EndFunc   ;==>MyErrFuncA função MyErrFunc detalha erros na execução do arquivo e não erro de sintaxe.
  13. Suas bibliotecas comum. Adicione essa linha no ínicio do seu script. $oMyError = ObjEvent("AutoIt.Error","MyErrFunc") Adicione essa função no final do seu script. Func MyErrFunc() Msgbox(0,"AutoItCOM Test","We intercepted a COM Error !" & @CRLF & @CRLF & _ "err.description is: " & @TAB & $oMyError.description & @CRLF & _ "err.windescription:" & @TAB & $oMyError.windescription & @CRLF & _ "err.number is: " & @TAB & hex($oMyError.number,8) & @CRLF & _ "err.lastdllerror is: " & @TAB & $oMyError.lastdllerror & @CRLF & _ "err.scriptline is: " & @TAB & $oMyError.scriptline & @CRLF & _ "err.source is: " & @TAB & $oMyError.source & @CRLF & _ "err.helpfile is: " & @TAB & $oMyError.helpfile & @CRLF & _ "err.helpcontext is: " & @TAB & $oMyError.helpcontext _ ) Local $err = $oMyError.number If $err = 0 Then $err = -1 SetError($err) ; to check for after this function returns Endfunc Se caso ocorre algum erro em seu script, essa função irá retornar uma janela com a descrição desse erro.
  14. Belini, Use essa função que serve para descrever algumas informações do seu erro. Inclusive a linha. ;;;; aqui você declara suas bibliotecas $oMyError = ObjEvent("AutoIt.Error","MyErrFunc") ;;;; aqui fica seu script ;;;; no final coloque essa função Func MyErrFunc()     Msgbox(0,"AutoItCOM Test","We intercepted a COM Error !"  & @CRLF  & @CRLF & _ "err.description is: " & @TAB & $oMyError.description & @CRLF & _ "err.windescription:" & @TAB & $oMyError.windescription & @CRLF & _ "err.number is: " & @TAB & hex($oMyError.number,8)  & @CRLF & _ "err.lastdllerror is: "   & @TAB & $oMyError.lastdllerror   & @CRLF & _ "err.scriptline is: " & @TAB & $oMyError.scriptline & @CRLF & _ "err.source is: " & @TAB & $oMyError.source & @CRLF & _ "err.helpfile is: "   & @TAB & $oMyError.helpfile   & @CRLF & _ "err.helpcontext is: " & @TAB & $oMyError.helpcontext _ ) Local $err = $oMyError.number If $err = 0 Then $err = -1 SetError($err) ; to check for after this function returns Endfunc
  15. Boa tarde galera, Queria saber se é possível através do código do meu script eu chamar e executar um outro arquivo au3. Eu consigo executar arquivos exe pela função Run(), mas queria saber se consigo executar um script pelo seu arquivo de origem. vlw Israel
×