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

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Executar um programa externo
eden
não registrado
Postada em 06/09/2007 06:46 hs   
Pessoal, estou com um problema. Estou usando o shell para executar uma programa de compressão (zip), acontece que ao realizar a execução, apenas abre a janela do DOS e nada contece. Teria que executar a aplicação externa e esperar acabar. Alguém saber fazer isso? (Win 2000 e XP SP2).
     
Dário Cardoso
GOIÂNIA
GO - BRASIL
Postada em 06/09/2007 06:59 hs            
Não entendi muito bem, mais se for para chamar um programa eu faço assim:
 
'------------INICIO DA ROTINA P/ CHAMAR UM EXECUTAVEL--------
Option Explicit
Private Declare Function CreateProcessA Lib "kernel32" (ByVal lpApplicationName As Long, ByVal lpCommandLine As String, ByVal lpProcessAttributes As Long, ByVal lpThreadAttributes As Long, ByVal bInheritHandles As Long, ByVal dwCreationFlags As Long, ByVal lpEnvironment As Long, ByVal lpCurrentDirectory As Long, lpStartupInfo As STARTUPINFO, lpProcessInformation As PROCESS_INFORMATION) As Long
Private Declare Function WaitForSingleObject Lib "kernel32" (ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Private Const INFINITE = &HFFFF      '  Infinite timeout
Private Const NORMAL_PRIORITY_CLASS = &H20
Private Type SECURITY_ATTRIBUTES
  nLength As Long
  lpSecurityDescriptor As Long
  bInheritHandle As Long
End Type
Private Type PROCESS_INFORMATION
  hProcess As Long
  hThread As Long
  dwProcessId As Long
  dwThreadId As Long
End Type
Private Type STARTUPINFO
  cb As Long
  lpReserved As String
  lpDesktop As String
  lpTitle As String
  dwX As Long
  dwY As Long
  dwXSize As Long
  dwYSize As Long
  dwXCountChars As Long
  dwYCountChars As Long
  dwFillAttribute As Long
  dwFlags As Long
  wShowWindow As Integer
  cbReserved2 As Integer
  lpReserved2 As Long
  hStdInput As Long
  hStdOutput As Long
  hStdError As Long
End Type
'------------FIM DO INICIO DA ROTINA P/ CHAMAR UM EXECUTAVEL----
 
'------------CONTINUAÇÃO DA ROTINA CHAMAR UM EXECUTAVEL--------
Public Sub ExecuteAndWait(cmdline As String)
  Dim Tmp1 As PROCESS_INFORMATION
  Dim Tmp2 As STARTUPINFO
  Dim Tmp3 As Long
    Tmp2.cb = Len(Tmp2)
  Tmp3 = CreateProcessA(0&, cmdline, 0&, 0&, 1&, NORMAL_PRIORITY_CLASS, 0&, 0&, Tmp2, Tmp1)
  Tmp3 = WaitForSingleObject(Tmp1.hProcess, INFINITE)
  Tmp3 = CloseHandle(Tmp1.hProcess)
End Sub
'--------FIM DA CONTINUAÇÃO DA ROTINA CHAMAR UM EXECUTAVEL--------
 
'----Coloque no evento CLICK do botão:-------
ExecuteAndWait (App.Path & "pastaomeprograma.exe")
  Exit Sub
 
BOM É UMA TRANQUEIRA E TANTOEmoções MAIS FUNCIONA MELHOR QUE O SHELL....rere
VOCÊ PODE ADAPITAR, TIPO TIRAR O App.Path E INDICAR O CAMINHO COMPLETO ETC..... FAÇA BOM PROVEITO.... QUALQUER COISA POSTA AE!!!!!
INTÉ...Emoções

 

"Se fizeres o bem, não é certo que serás aceito? E se não fizeres o bem, o pecado jaz à porta, e sobre ti será o seu desejo; mas sobre ele tu deves dominar - Gênesis 4.7" Emoções
     
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