USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Executar uma aplicação com o VB6 automaticamente.
WET
TABOÃO DA SERRA
SP - BRASIL
ENUNCIADA !
Postada em 20/12/2011 16:23 hs         
Boa tarde amigos, já devem ter visto outras mensagens minhas aqui, quero primeiro agradecer aos amigos que colaboraram para solução destes.
Bom estou aqui para tentar ajuda em mais uma.
Temos um software que precisamos rodar todas as manhãs para atualização de tabelas como taxa de dolar e outros, este software é de terceiros, não quero abrir o fonte eu quero só executar sem intervensão humana.
Sei que para executar o software, consigo através do gerenciador de tarefas do Windows ou alguma ferramento do genero. Mas o que preciso é mais que isso.
Preciso através do VB6 executar o programa, preencher algumas telas e mandar atualizar as tabelas, depois disso o nosso sistema VB6 busca as informações neste outro aplicativo. Não sei se fui claro.
É possivel acessar a um outro programa e preencher campos das telas automaticamente?

Obrigado por enquanto.
   
LCRamos
Pontos: 2843
GOIANIA
GO - BRASIL
ENUNCIADA !
Postada em 20/12/2011 20:47 hs            
Olha rodar é fácil, mas você tem que ver quando o programa termina a execução, por isto eu uso o que está neste link, funciona muito bem:

http://www.vbweb.com.br/dicas_visual.asp?Codigo=1362&Classificacao=

vlu//
   
WET
TABOÃO DA SERRA
SP - BRASIL
Postada em 21/12/2011 09:09 hs         
Olá LCRamos entendi, mas como preencho os campos, pois eu teria que seguir os seguintes passos.
-Executar o programa.
-Escolher no menu a opção.
-Preencher alguns campos.
-Aguardar alimentar as tabelas
-Finalizar.

Obrigado.
     
LCRamos
Pontos: 2843
GOIANIA
GO - BRASIL
ENUNCIADA !
Postada em 22/12/2011 05:09 hs            
Olha, não entendi bem isto de preencher campos, por que na verdade, você executa o programa e aguarda finalizar, dai, você segue os passos normais, não conheço seu sistema e forma de executar.
Então, o primeiro passo é executar a rotina externa e aguardar terminar, depois siga os passos normais do seu sistema.
Mas veja, sempre que tenho que fazer com que o Operador aguarde o término de uma determinada rotina, eu bloqueio o teclado e o mouse, e envio a mensagem da rotina.
Claro que sempre existe a possibilidade de algum erro, e o teclado e o mouse ficarem bloqueados, mas você captura o erro, desbloqueando.
Agora imagine rotinas demoradas, que o Operador fica "clicando" e "teclando" achando que travou, o que dá de problemas é brincadeira.
Espero ter ajudado, qualquer coisa estou à disposição.

vlu//
   
WET
TABOÃO DA SERRA
SP - BRASIL
ENUNCIADA !
Postada em 22/12/2011 10:34 hs         
Olá LCRamos, creio que encontrei o como carregar os campos, tentei aplicar seu exemplo mas não entendi a variavel ret&.
Segue o codigo que fiz.
O estranho que as vezes roda certinho as vezes não  completa.

Mas de qualquer forma obrigado pela atenção.

Private Sub Command1_Click()
    
    On Error GoTo Trata_Erro
  

    Shell "C:SISCOPRDimport.prdTabSisco.exe", vbNormalFocus
    DoEvents
    SendKeys "%{NUMLOCK}"
    Sleep (1000)
    SendKeys "Taxa de conversão de "
    SendKeys "Alt %"
    SendKeys "A,C"
    SendKeys "000"
    SendKeys "{TAB}"
    SendKeys "999"
    SendKeys "{TAB}", True
    SendKeys "{TAB}", True
    SendKeys "{ENTER}", True

    
Trata_Erro:

    Screen.MousePointer = vbDefault
    
    Select Case Err.Number
        Case -2147217900, -2147217873, 3001, -2147217913, 3421, 1004
            MsgBox Mid(Err.Description, InStrRev(Err.Description, "]") + 1)
            Exit Sub
    End Select
    Err = 0
  
End Sub
   
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2025   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página