Newsgroup: it.comp.lang.visual-basic
Titolo: Termina applicazione avviata con CALL SHELL..E' possibile??

Come faccio a chiudere un'applicazione avviata con CALL SHELL??
Mi spiego meglio:
Con COMMONDIALOG l'utente sceglie l'applicazione da aprire...però,se
voglio chiuderla tramite un pulsante della mia Form???Ah, ovviamente tra
l'apertura e la chiusura, il focus ritornerà al mio programma, quindi
penso che sia da escludere a priori il SendKeys(anche perchè alcuni
programmi con ALT+F4 si riduco a icona)..
Ora però chiedo troppo :o  Visto che i programmi che l'utente deciderà di
far partire, saranno presumibilmente i peer-to-peer, mi servirebbe un
aiuto per chiudere anche i programmi che si trovano nel SystemTray....
Purtroppo ho trovato materiale per questo mio problema ma è inadatto,
visto che intercetta il titolo dell'applicazione che è stata avviata....ma
1) non posso sapere a priori questo titolo e 2) alcuni programmi
peer-to-peer hanno nel titolo anche la velocità di download/upload quindi
non penso sia fattibile come discorso, visto che questi parametri cambiano
continuamente...
Vi ringrazio infinitamente....
Gringoire
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 +
Tempo fa ho scritto un componente che termina un'applicazione prendendo in
input il nome dell'eseguibile, se è quello che ti occorre fammelo sapere che
te la giro.
ciao.
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 ciao.
Credo che sia proprio quello che cerco...mi faresti davvero un grande
favore a girarmela...Grazie davvero :D



a quale indirizzo te la mando?



Gring...@liberoNOSPAM.it senza il NOSPAM :)
Grazie ancora...
Ciao :)


 continuamente...
www.google.it
 "partial+windows" (sezioni VB)
oppure agisci sulla classe o sul HWND :
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String)
As Long
Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As
Long, lParam As Any) As Long
Private Declare Function GetClassName Lib "user32" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal
nMaxCount As Long) As Long
Private Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
Const SW_SHOWNORMAL = 1
Const WM_CLOSE = &H10
Const gcClassnameDSysList = "SysListView32"
Const gcClassnameBabylon = "Babylon"
Const gcClassnameMSIExplorer = "IEFrame"
Const gcClassnameMSVBasic = "wndclass_desked_gsk"
Const gcClassnameNotePad = "Notepad"
Const gcClassnameMyVBApp = "ThunderForm"
Private Sub Form_Load()
 Dim WinWnd As Long, Ret As String, RetVal As Long, lpClassName As String
    'Ask for a Window title
 'Ret = InputBox("Enter the exact window title:" + Chr$(13) + Chr$(10) + "Note: must be an exact match")
    'Search the window
   WinWnd = FindWindow("SysListView32", vbNullString)
   ' WinWnd = FindWindow("Babylon", vbNullString)
    If WinWnd = 0 Then MsgBox "Couldn't find the window ...": Exit Sub
    'Show the window
   ' ShowWindow WinWnd, SW_SHOWNORMAL
    'Create a buffer
    lpClassName = Space(256)
    'retrieve the class name
    RetVal = GetClassName(WinWnd, lpClassName, 256)
    'Show the classname
    MsgBox "Classname: " + Left$(lpClassName, RetVal)
    'Post a message to the window to close itself
    PostMessage WinWnd, WM_CLOSE, 0&, 0&
End Sub
--
Fosco