|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Registered User
Iscritto dal: Jan 2004
Città: legoland
Messaggi: 121
|
Vb e processi
C'è un modo di gestire i processi in vb?
Esempio: faccio partire pippo.exe con questa riga di codice shell "c:\pippo.exe" poi posso chiuderlo con un altro comando? E dopo il path del comando shell ho visto in alcuni codici un numero (Es. shell "....." , 1),cos'è? |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
I numeri dopo la virgola della funzione shell servono per gestire com'è viene lanciato il programma, questi sono i parametri:
vbHide (0): La finestra è nascosta e lo stato attivo viene passato alla finestra nascosta. vbNormalFocus (1): La finestra è attivata e vengono ripristinate la dimensione e la posizione originali. vbMinimizedFocus (2): La finestra è ridotta a icona e attivata. vbMaximizedFocus (3): La finestra è ingrandita e attivata. vbNormalNoFocus (4): Vengono ripristinate le dimensioni e posizione precedenti della finestra. La finestra attiva resta attiva. vbMinimizedNoFocus (6): La finestra è ridotta a icona. La finestra attiva resta attiva.
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Quando lanci una programma con la Shell ti conviene creare una variabile long così:
Dim lRet as Long lRet=Shell(....) Così ti ritorno il numero dell'ID del processo, se torna 0 il programma non è partito... Con questo numeo tu puoi killare appunto il processo così: Codice:
Option Explicit Private Const PROCESS_ALL_ACCESS As Long = &H1F0FFF Private Declare Function OpenProcess Lib "kernel32.dll" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long Private Declare Function TerminateProcess Lib "kernel32.dll" (ByVal hProcess As Long, ByVal uExitCode As Long) As Long Public Sub CloseProcess(ByVal lIDProcess As Long) Dim lProcess As Long 'chiudo il processo lProcess = OpenProcess(PROCESS_ALL_ACCESS, 0&, lIDProcess) Call TerminateProcess(lProcess, 0&) End Sub
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
![]() |
![]() |
![]() |
#4 | |
Registered User
Iscritto dal: Jan 2004
Città: legoland
Messaggi: 121
|
originariamente inviato da matpez
Quote:
Mi hai gia aiutato 3 volte e in pratica il programma me lo hai finito tu! Grazie ancora, 6 una piccola enciclopedia |
|
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
ehheheheh
Prego ![]() Se qlc la so te la dico ![]()
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 15:10.