- Сообщения
 - 3,573
 
- Репутация
 - 634
 
я поднимал подобный вопрос в теме http://autoit-script.ru/index.php/topic,7242.0.html
Yashied указал на функцию
	
	
	
	
  
    
	
	
		
			
			
			
			
			
		
	
	
	
		
	
	
		
	
 из WinApiEx.au3
я использовал не в предложенном варианте а так
	
	
	
	
  
    
	
	
		
			
			
			
			
			
		
	
	
	
		
	
	
		
	
работает при зависании контекстного меню. проверял работу, когда привод не мог считать диск ( диск был убитый), соответственно было зависание окна "мой компьютер". в обоих случаях сначала выгружался explorer.exe, а потом закрывалось окно.
Косяк всплыл позже..запустил qip (старый) . появилось окно с прогрессом загрузки..на половине загрузки (когда строка состояния загрузки была неподвижна) скрипт закрыл окно, соответственно сам процесс qip.exe выгрузился. не понял, почему так мало дано было времени скриптом программе на отклик?. контекстному меню он дольше давал висеть.
кажется вот решение рядом, но что то не могу обойти этот косяк.
			
			Yashied указал на функцию
			
				Код:
			
		
		
		_WinAPI_IsHungAppWindow()
	я использовал не в предложенном варианте а так
			
				Код:
			
		
		
		While 1
	$_ActivWindow = WinGetHandle("[Active]")
	If _WinAPI_IsHungAppWindow($_ActivWindow) Then 
		WinKill($_ActivWindow)
	EndIf
	Sleep(100)
WEnd
Func _WinAPI_IsHungAppWindow($hWnd)
	Local $Ret = DllCall('user32.dll', 'int', 'IsHungAppWindow', 'hwnd', $hWnd)
	If @error Then
		Return SetError(1, 0, 0)
	EndIf
	Return $Ret[0]
EndFunc
	работает при зависании контекстного меню. проверял работу, когда привод не мог считать диск ( диск был убитый), соответственно было зависание окна "мой компьютер". в обоих случаях сначала выгружался explorer.exe, а потом закрывалось окно.
Косяк всплыл позже..запустил qip (старый) . появилось окно с прогрессом загрузки..на половине загрузки (когда строка состояния загрузки была неподвижна) скрипт закрыл окно, соответственно сам процесс qip.exe выгрузился. не понял, почему так мало дано было времени скриптом программе на отклик?. контекстному меню он дольше давал висеть.
кажется вот решение рядом, но что то не могу обойти этот косяк.