Ir para conteúdo


Foto
- - - - -

_AutoItErrorTrap.au3 (UDF)


  • Por favor, faça o login para responder
41 respostas neste tópico

#1 JScript

JScript

    A cada dia que passa eu aprendo muito mais com todos vocês!

  • Administradores (Adm)
  • PipPipPipPipPip
  • 2.445 posts
  • LocationSomewhere out there!

Postado 17 outubro 2012 - 05:09

Function Reference 
_AutoItErrorTrap.au3

Interceptação e tratamento de erros em programas

Por favor Login ou se não possuir um conta Registre-se para ver o conteúdo escondido

 

Por favor Login ou se não possuir um conta Registre-se para ver o conteúdo escondido

  143bytes   30 Downloads

Nota: A interceptação de erros é feita no mesmo executável, não necessitando de dois .exes abertos para essa ação!
Está incluso exemplo de uso!

Amostra:

sample10.jpg
Mais amostras:
Spoiler


Correções:
Spoiler
 
Abraços,

João Carlos.

#2 joelson0007

joelson0007

    Administrador

  • Administradores (Adm)
  • PipPipPipPipPip
  • 895 posts
  • LocationGuarapuava - PR

Postado 17 outubro 2012 - 05:36

obrigado :up: :up: :up:
muito obrigado @jscript, era isso que estava faltando no autoit, aqui funcionou 100%, concerteza vai ser adicionado aos meus script,
muito obrigado por essa excelente idéia que teve!
e consumo de recursos ficou chique demais ^_^
se encontrar um bug posto aqui para analisar.

#3 JScript

JScript

    A cada dia que passa eu aprendo muito mais com todos vocês!

  • Administradores (Adm)
  • PipPipPipPipPip
  • 2.445 posts
  • LocationSomewhere out there!

Postado 17 outubro 2012 - 05:54

Fico bastante feliz por você ter gostado meu amigo!

Isso é :autoit: :brasil:

JS

#4 Belini

Belini

    Administrador

  • Administradores (Adm)
  • PipPipPipPipPip
  • 2.227 posts
  • LocationMinas Gerais

Postado 17 outubro 2012 - 07:17

Excelente trabalho jscript, muito melhor que as mensagens geradas pelo compilador.

#5 JScript

JScript

    A cada dia que passa eu aprendo muito mais com todos vocês!

  • Administradores (Adm)
  • PipPipPipPipPip
  • 2.445 posts
  • LocationSomewhere out there!

Postado 17 outubro 2012 - 07:38

Obrigado @Belini, a meta mais difícil vai ser continuar o programa de onde parou com o erro... :ninja:

JS

#6 Belini

Belini

    Administrador

  • Administradores (Adm)
  • PipPipPipPipPip
  • 2.227 posts
  • LocationMinas Gerais

Postado 17 outubro 2012 - 07:54

Realmente esta parte se for possível fazer será bastante complicada mais também se conseguir será um feito inédito.

#7 JScript

JScript

    A cada dia que passa eu aprendo muito mais com todos vocês!

  • Administradores (Adm)
  • PipPipPipPipPip
  • 2.445 posts
  • LocationSomewhere out there!

Postado 17 outubro 2012 - 08:06

:construction:

#8 JScript

JScript

    A cada dia que passa eu aprendo muito mais com todos vocês!

  • Administradores (Adm)
  • PipPipPipPipPip
  • 2.445 posts
  • LocationSomewhere out there!

Postado 18 outubro 2012 - 01:56

Correções:
  • 0.10.1812.2600b
  • 18/10/2012 -> Os botões agora tem ícones personalisados e foi adicionado mais um botão para salvar as informações de erro!
JS

#9 Belini

Belini

    Administrador

  • Administradores (Adm)
  • PipPipPipPipPip
  • 2.227 posts
  • LocationMinas Gerais

Postado 18 outubro 2012 - 08:58

@Jscript onde fica a gui que mostra as informações dos erros, procurei na _AdlibEnhance.au3, no _AutoItErrorTrap.au3 e nos exemploe e em nenhum tem este form.

Esta gui:
Spoiler


#10 JScript

JScript

    A cada dia que passa eu aprendo muito mais com todos vocês!

  • Administradores (Adm)
  • PipPipPipPipPip
  • 2.445 posts
  • LocationSomewhere out there!

Postado 19 outubro 2012 - 02:43

@Belini
O motivo de toda essa janela funcionar mesmo já ocorrido um erro e o interpretador/compilador já ter desviado e encerrado suas atividades mostrando somente a janela de erro nativa é a seguinte linha:
[autoit]
DllCall('User32.dll', 'int', 'MessageBoxIndirectW', 'ptr', DllStructGetPtr($tMSGBOXPARAMS))
[/autoit]
Onde uso Call Back para interceptar e modificar da forma que desejo! Pois usando a GUICreate() não funcionaria devido ao que mensionei acima.  
Correções:
  • 0.10.1912.2600b
  • 19/10/2012 -> A UDF foi quase que totalmente rescrita, agora não precisa mais incluir a _AdlibEnhance.au3 !!!
    A detecção dos erros está instantânea e não consome mais CPU. Interface compatível com o Windows XP
Abraços,

João Carlos.

#11 Belini

Belini

    Administrador

  • Administradores (Adm)
  • PipPipPipPipPip
  • 2.227 posts
  • LocationMinas Gerais

Postado 19 outubro 2012 - 08:49

@jscript não foi isto que perguntei, quero saber onde fica este form que postei na figura acima pois não achei as linhas em lugar nenhum prá mudar as informações dos botões.

#12 JScript

JScript

    A cada dia que passa eu aprendo muito mais com todos vocês!

  • Administradores (Adm)
  • PipPipPipPipPip
  • 2.445 posts
  • LocationSomewhere out there!

Postado 19 outubro 2012 - 09:17

Eita, eu entendi sim... Novamente, aqui está o form:
[autoit]
DllCall('User32.dll', 'int', 'MessageBoxIndirectW', 'ptr', DllStructGetPtr($tMSGBOXPARAMS))
[/autoit]
Para mudar as informações dentro dele, basta ir na função: __AET_CBTProc()

Abraços,

João Carlos.

#13 Belini

Belini

    Administrador

  • Administradores (Adm)
  • PipPipPipPipPip
  • 2.227 posts
  • LocationMinas Gerais

Postado 19 outubro 2012 - 10:08

Ah tá você está pegando da User32.dll, eu tinha procurado pelos nomes mostrados nos botões em português e na UDF tá tudo em inglês, agora entendi.

#14 JScript

JScript

    A cada dia que passa eu aprendo muito mais com todos vocês!

  • Administradores (Adm)
  • PipPipPipPipPip
  • 2.445 posts
  • LocationSomewhere out there!

Postado 19 outubro 2012 - 10:26

Eu decidi deixar os nomes no padrão da lingua inglesa da mesma forma da janela nativa de erros do AutoIt...

Nesse caso, basta traduzir o que não está associado nos parâmetros da função _AutoItErrorTrap()!

JS

#15 joelson0007

joelson0007

    Administrador

  • Administradores (Adm)
  • PipPipPipPipPip
  • 895 posts
  • LocationGuarapuava - PR

Postado 19 outubro 2012 - 11:04

muito obrigado @jscript, essa última versão ta muito legal, ficou muito bonito mesmo, e intuitivo.
mostra a linha o sistema operacional e tudo mais.
e o mais importante e que ta leve que nem pena!
:up:

#16 JScript

JScript

    A cada dia que passa eu aprendo muito mais com todos vocês!

  • Administradores (Adm)
  • PipPipPipPipPip
  • 2.445 posts
  • LocationSomewhere out there!

Postado 19 outubro 2012 - 03:07

Ainda terá muito mais novidades, aguarde...

Nota: Nosso fórum já tem bastante usuários cadastrados, mas observe que tirando a equipe, contamos nos dedos de uma mão só os usuários que postam comentários!
Nesse link:

Por favor Login ou se não possuir um conta Registre-se para ver o conteúdo escondido


Tá bombando, a galera comenta, dá dicas, ajuda...


JS

#17 JScript

JScript

    A cada dia que passa eu aprendo muito mais com todos vocês!

  • Administradores (Adm)
  • PipPipPipPipPip
  • 2.445 posts
  • LocationSomewhere out there!

Postado 21 outubro 2012 - 05:26

Correções:
  • 0.10.2112.2600b
  • 21/10/2012 -> Alguns erros foram corrigidos e funções reescritas!
JS

#18 Belini

Belini

    Administrador

  • Administradores (Adm)
  • PipPipPipPipPip
  • 2.227 posts
  • LocationMinas Gerais

Postado 23 outubro 2012 - 09:36

@Jscript eu gostaria de incluir esta UDF nos meus scripts mais só com a função de criar um log de erros no mesmo lugar onde se encontrar o script sem mostrar a gui ou qualquer outra mensagem de erro, dá prá fazer assim?

#19 JScript

JScript

    A cada dia que passa eu aprendo muito mais com todos vocês!

  • Administradores (Adm)
  • PipPipPipPipPip
  • 2.445 posts
  • LocationSomewhere out there!

Postado 23 outubro 2012 - 10:05

Com certeza, mas o usuário apenas verá o programa reiniciando não é mesmo?

JS

#20 Belini

Belini

    Administrador

  • Administradores (Adm)
  • PipPipPipPipPip
  • 2.227 posts
  • LocationMinas Gerais

Postado 23 outubro 2012 - 10:28

A idéia é esta mesmo ser uma função interna do programa prá gerar um log de erros prá ser acessado e fazer as correções no script posteriormente, tentei alterar sua UDF mais fiquei meio perdido e não consegui tirar as mensagens prá deixar gerando apenas o arquivo de log, minha intenção é usar ela em conjunto com a OnAutoItErrorRegister que já alterei e serve prá reiniciar automaticamente o script em caso de erro.




0 usuário(s) está(ão) lendo este tópico

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

Documentação OnLine de referência