Страница: 1 | 
		
		 
			   
			 
			 
			 
			 Страница: 1 | 
 
			
 
  
		
     
  
    
Вопрос: kill explorer
     
    
Добавлено: 04.09.05 10:07
     
      
  
				
			  
					 
			
				 
    
		
       
    
Автор вопроса:  
     mr_Frank | Web-сайт: subaru.nv-avto.ru | ICQ: 316417
 mr_Frank | Web-сайт: subaru.nv-avto.ru | ICQ: 316417 
      
       
  
Помогите мне закрыть explorer из программы
 
    
				
		
		
					 
			
				 
  
		
     
  
    
Ответы
     
    
Всего ответов: 7
     
      
  
		
	  
			 
	
		 
    
       
    
Номер ответа: 1 
      
Автор ответа: HOOLIGAN
 HOOLIGAN

Вопросов: 0
Ответов: 1066
      
 Профиль |  | #1
       
Добавлено:  04.09.05 10:46
       
    
       
  
Посмотри в msdn SC_CLOSE
 
    
		
	  
			 
	
		 
    
       
    
Номер ответа: 2 
      
Автор ответа: mr_Frank
 mr_Frank

ICQ: 316417 
Вопросов: 36
Ответов: 94
      
 Web-сайт:  
 Профиль |  | #2
      
Добавлено:  04.09.05 13:43
       
    
       
  
у меня нет msdn
 
    
		
	  
			 
	
		 
    
       
    
Номер ответа: 3 
      
Автор ответа: Sharp
 Sharp










Лидер форума
ICQ: 216865379 
Вопросов: 106
Ответов: 9979
      
 Web-сайт:  
 Профиль |  | #3
      
Добавлено:  04.09.05 14:50
       
    
       
  
http://msdn.microsoft.com
 
    
Дешевые отмазки
		
	  
			 
	
		 
    
       
    
Номер ответа: 4 
      
Автор ответа: HACKER
 HACKER








 
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
      
 Профиль |  | #4
       
Добавлено:  04.09.05 18:52
       
    
       
  
примеров по убиванию процесса полно, только вот думаю что ты его убъеш, а винда тут же снова запустит (XP точно)
 
    
		
	  
			 
	
		 
    
       
    
Номер ответа: 5 
      
Автор ответа: HOOLIGAN
 HOOLIGAN

Вопросов: 0
Ответов: 1066
      
 Профиль |  | #5
       
Добавлено:  04.09.05 19:15
       
    
       
  
Если произошла ошибка в explorer'e, то Винда перезапустит его. Если просто прибить (например из TaskManager'а) то не перезапустится (в ХР тоже), пока сам вручную не запустишь.
 
    
		
	  
			 
	
		 
    
       
    
Номер ответа: 6 
      
Автор ответа: HACKER
 HACKER








 
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
      
 Профиль |  | #6
       
Добавлено:  04.09.05 23:17
       
    
       
  
ну тогда без проблем...
 
    
'                                                           |
' = = = = = = = M A D E   B Y   H A C K E R = = = = = =     |
'         icq: 334479038, mail: no_detect@mail.ru              |
'===========================================================|
Public proc As PROCESSENTRY32, Snap As Long
Public Declare Function CreateToolhelpSnapshot Lib "kernel32" Alias "CreateToolhelp32Snapshot" (ByVal lFlags As Long, ByVal lProcessID As Long) As Long
Public Declare Function ProcessFirst Lib "kernel32" Alias "Process32First" (ByVal hSnapshot As Long, uProcess As PROCESSENTRY32) As Long
Public Declare Function ProcessNext Lib "kernel32" Alias "Process32Next" (ByVal hSnapshot As Long, uProcess As PROCESSENTRY32) As Long
Public Declare Function TerminateProcess Lib "kernel32" (ByVal hProcess As Long, ByVal uExitCode As Long) As Long
Public Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Public Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Public Const TH32CS_SNAPPROCESS = &H2, TH32CS_SNAPheaplist = &H1, TH32CS_SNAPthread = &H4, TH32CS_SNAPmodule = &H8, TH32CS_SNAPall = TH32CS_SNAPPROCESS + TH32CS_SNAPheaplist + TH32CS_SNAPthread + TH32CS_SNAPmodule, MAX_PATH As Integer = 260
Public Type PROCESSENTRY32
    dwSize As Long
    cntUsage As Long
    th32ProcessID As Long
    th32DefaultHeapID As Long
    th32ModuleID As Long
    cntThreads As Long
    th32ParentProcessID As Long
    pcPriClassBase As Long
    dwFlags As Long
    szexeFile As String * MAX_PATH
End Type
Dim mass() As Long
Dim NP() As String
Public Sub KillProc(ArryProsess$())
'Убивает все процессы которые даны в массиве
ReDim mass(0)
ReDim NP(0)
On Error Resume Next
    Snap = CreateToolhelpSnapshot(TH32CS_SNAPall, 0)
    proc.dwSize = Len(proc)
    TheLoop = ProcessFirst(Snap, proc)
    Index = 0
    While TheLoop <> 0
        NP$(Index) = Replace(proc.szexeFile, Right(proc.szexeFile, 1), "" 
        mass(Index) = proc.th32ProcessID
        Index = Index + 1
        ReDim Preserve NP(Index)
        ReDim Preserve mass(Index)
        TheLoop = ProcessNext(Snap, proc)
    Wend
    CloseHandle Snap
For i% = 0 To UBound(ArryProsess$)
Kick$ = ArryProsess$(i 
For q% = 0 To Index
    
    If LCase(Left(Spliting(NP$(q , "\"
, "\" , Len(Kick$))) = LCase(Kick$) Then
, Len(Kick$))) = LCase(Kick$) Then
        openproc = OpenProcess(1, 0, mass(q )
)
        term = TerminateProcess(openproc, -9)
    End If
Next q%
Next i%
End Sub
Dim arr$()
arr$(0) = "explorer.exe"
KillProc arr$
End Sub
		
	  
			 
	
		 
    
       
    
Номер ответа: 7 
      
Автор ответа: HACKER
 HACKER








 
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
      
 Профиль |  | #7
       
Добавлено:  04.09.05 23:19
       
    
       
  
и ещё...
 
    
в Private Sub Form_Load() 
Dim arr$(0)  '!!!
и
If sFullPath = "" Then Exit Function
Dim str1() As String
str1 = Split(sFullPath, point)
Spliting = str1(UBound(str1))
End Function