| 
							anatolich
							 
								Гость 
							 
						 | 
						
							
								  | 
								
									
									 «  : 26-12-2006 07:52 »   | 
								
								 | 
							  
							 
							Написал драйвер sys для своей PCI платы. Работает отлично. Спасибо форумчанам.  Теперь если приложение не запускаю - комп нормально выключается Если дернул драйвер, то при выключении компа диски гасятся, видео - все кроме PCI шины. Толи я какой- то IRP системный не обрабатываю? Подскажите... 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							Ochkarik
							
						 | 
						
							
								  | 
								
									
									 « Ответ #1 : 26-12-2006 13:39 »   | 
								
								 | 
							  
							 
							IRP_MJ_POWER глянь внимательно... и IRP_MN_QUERY_STOP_DEVICE/IRP_MN_STOP_DEVICE вроде бы...  и IRP_MN_QUERY_CAPABILITIES мейби... кстати что значит "кроме шины"? на ней питалово остается? так... оно помоему и должно некоторое... если не путаю... иначе как модемы могут комп по сигнлу будить?)) и еще... если все так как вы пишете - посмотрите что при открытии драйвера делаете... может ресурсы какие не освободили? хотя если честно - больше похоже на баги) 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
									« Последнее редактирование: 26-12-2006 13:43 от Ochkarik »
								 | 
								
									 
									Записан
								 | 
							  
							 
							RTFM уже хоть раз наконец!     :[ ну или хотя бы  STFW...  
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							anatolich
							 
								Гость 
							 
						 | 
						
							
								  | 
								
									
									 « Ответ #2 : 26-12-2006 14:51 »   | 
								
								 | 
							  
							 
							Рад вновь встретить вас на форуме С наступающим!!! Не придумаю как технологичней трассировать. Все случается когда уже ХР сохраняет параметры при выключении и в этот момент повисает. В приложении все работает нормально, даже с 6-ю платами При освобождении хэндлов, в дебагере вижу, что все clear u close выполнились. А что делается в моем PowerDispatch или ShutdownDispatch не вижу конечно. Может повыкидывать все это...
  
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							Ochkarik
							
						 | 
						
							
								  | 
								
									
									 « Ответ #3 : 26-12-2006 15:30 »   | 
								
								 | 
							  
							 
							эээ... одна возможная бага... прерывания использовали? может непогашено/незамаскировано  осталось?) PowerDispatch я брал от нумеги и помоему ничего там не исправлял... 
  для отладки попробуйте не выключать комп а принудительно удалить драйвер из дерева устройств - какая реакция? ну и старт-стоп там же в дереве. 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
									« Последнее редактирование: 26-12-2006 15:31 от Ochkarik »
								 | 
								
									 
									Записан
								 | 
							  
							 
							RTFM уже хоть раз наконец!     :[ ну или хотя бы  STFW...  
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							anatolich
							 
								Гость 
							 
						 | 
						
							
								  | 
								
									
									 « Ответ #4 : 22-01-2007 08:59 »   | 
								
								 | 
							  
							 
							Здравствуйте Ochkarik, по вашему совету поиграл с птичками в Compuware DriverStudio. Так как наше железо не поддерживает управление по питанию, то поубирал некоторые переключатели в Compuware DriverStudio. Хоть и не осталось ясного понимания, зато работает. Спасибо 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
						 | 
					 
				 
			 |  
		 
	 | 
	
		
		
			
				
					
						| 
							Ochkarik
							
						 | 
						
							
								  | 
								
									
									 « Ответ #5 : 22-01-2007 12:32 »   | 
								
								 | 
							  
							 
							тогда скорее всего это были флаги в AddDevice:  DeviceObject->Flags |= DO_POWER_PAGABLE; (или  DO_POWER_INRUSH.) у меня первый стоит. в DDK про них написано. 
						 | 
					 
					
						
							
								| 
								 | 
							 
								| 
								 | 
								
									 
									Записан
								 | 
							  
							 
							RTFM уже хоть раз наконец!     :[ ну или хотя бы  STFW...  
						 | 
					 
				 
			 |  
		 
	 | 
	 |