Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Visual Basic 6 - piccoli aiuti
Forum - Visual Basic 6 - piccoli aiuti

Avatar
Ultra Phonic 2 (Ex-Member)
Pro


Messaggi: 181
Iscritto: 15/09/2008

Segnala al moderatore
Postato alle 19:05
Martedì, 25/11/2008
ciao a tutti,
come da titolo mi servirebbero dei piccoli aiuti:

Codice sorgente - presumibilmente Visual Basic 6

  1. - come elencare i programi in esecuzione in una list
  2. - come terminare tutte le applicazioni in esecuzione
  3. - come spegnere il pc tramite un btn su un prog
  4. - come inviare email dal prog a una casella di posta



grazie

PM Quote
Avatar
GrG (Member)
Guru^2


Messaggi: 3430
Iscritto: 21/08/2007

Segnala al moderatore
Postato alle 15:14
Mercoledì, 26/11/2008
Anche se mi sembra la lista della spesa...xD

-Elencare i processi in una listbox (chiamata lbprocessi):
Codice sorgente - presumibilmente VB.NET

  1. Dichiarare:
  2. Option Explicit
  3.  
  4. Private Const TH32CS_SNAPPROCESS = &H2
  5. Private Const MAX_PATH As Integer = 260
  6.  
  7. Private Type PROCESSENTRY32
  8. dwSize As Long
  9. cntUsage As Long
  10. th32ProcessID As Long
  11. th32DefaultHeapID As Long
  12. th32ModuleID As Long
  13. cntThreads As Long
  14. th32ParentProcessID As Long
  15. pcPriClassBase As Long
  16. dwFlags As Long
  17. szExeFile As String * MAX_PATH
  18. End Type
  19.  
  20. Private Declare Function CreateToolhelp32Snapshot Lib "kernel32" (ByVal lFlags As Long, ByVal lProcessID As Long) As Long
  21. Private Declare Function Process32First Lib "kernel32" (ByVal hSnapShot As Long, uProcess As PROCESSENTRY32) As Long
  22. Private Declare Function Process32Next Lib "kernel32" (ByVal hSnapShot As Long, uProcess As PROCESSENTRY32) As Long
  23. Private Declare Sub CloseHandle Lib "kernel32" (ByVal hObject As Long)
  24.  
  25.  
  26. Poi inserire:
  27.  
  28. Private Sub Command1_Click()
  29. Dim hSnapShot As Long
  30. Dim uProcess As PROCESSENTRY32
  31. Dim lngRet As Long
  32.  
  33. hSnapShot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0&)
  34. uProcess.dwSize = Len(uProcess)
  35. lngRet = Process32First(hSnapShot, uProcess)
  36. lbprocessi.Clear
  37. Do While lngRet
  38. lbprocessi.AddItem Left$(uProcess.szExeFile, InStr(1, uProcess.szExeFile, vbNullChar) - 1)
  39. lngRet = Process32Next(hSnapShot, uProcess)
  40. Loop
  41. CloseHandle hSnapShot
  42.  
  43. Dim x As Integer
  44. Dim a As Double
  45. Dim proc As Boolean
  46. x = -1
  47. For a = 1 To lbprocessi.ListCount
  48. x = x + 1
  49. Next
  50. end sub



-Per terminare un processo (poi con dei cicli ti termini i processi ke vuoi...n.b. i processi di sistema non si possono terminare):
Codice sorgente - presumibilmente VB.NET

  1. Dim Processo As Variant
  2.  
  3. Function TerminaProcesso(NomeProcesso As String)
  4. On error resume next
  5.    For Each Processo In GetObject("winmgmts:").InstancesOf("win32_process")
  6.        If Processo.Name = NomeProcesso Then Processo.Terminate
  7.    Next
  8. End Function
  9. In un pulsante o dove vuoi metti ad esempio:
  10. TerminaProcesso "notepad.exe" 'nome processo



-Per spegnere il computer metti in un pulsante:
Codice sorgente - presumibilmente Plain Text

  1. shell "shutdown -s -t00"



-Per quest'ultimo problema già se n'è parlato di recente ricerca il post =)

PM Quote