![]()  | 
	
 
  | 
		
			
  | 	
	
	
		
		|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны | 
![]()  | 
	
	
| 
		 | 
	Опции темы | Поиск в этой теме | Опции просмотра | 
| 
		 
			 
			#1  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 люди подскажите плиз как: 
		
	
		
		
		
		
			
		
		
		
		
	
		
		
	
	
	прогммно ваключить комп; прогммно перезагрузить комп; прогммно отправить в ждущий режим;  | 
| 
		 
			 
			#3  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 еще можно воспользоваться командной строкой используя winexec, команда Shutdown -s -f 
		
	
		
		
		
		
			
		
		
		
		
	
		
		
	
	
	-s выключение -r перезапуск -f без предупреждения так же можно выключить чюжой копм по сети  | 
| 
		 
			 
			#4  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 Да, но чужой комп вырубать не получалось.... 
		
	
		
		
		
		
			
		
		
		
		
	
		
		
	
	
	 | 
| 
		 
			 
			#5  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Цитата: 
	
 ![]()  | 
| 
		 
			 
			#6  
			
			
			
			
		 
		
		
	 | 
|||
		
		
  | 
|||
| 
	
	
		
			
			 Вырубить: 
		
	
		
		
		
		
			
		
		
		
		
	
		
		
	
	
	http://www.sources.ru/delphi/system/..._windows.shtml Как завершить сеанс работы или перезагрузить Windows NT: Код: 
	function SetPrivilege(aPrivilegeName : string;  
                      aEnabled : boolean ): boolean;  
var  
  TPPrev,  
  TP         : TTokenPrivileges;  
  Token      : THandle;  
  dwRetLen   : DWord;  
begin  
  Result := False;  
  OpenProcessToken(GetCurrentProcess,TOKEN_ADJUST_PRIVILEGES  
                   or TOKEN_QUERY, @Token );  
  TP.PrivilegeCount := 1;  
  if( LookupPrivilegeValue(nil, PChar( aPrivilegeName ),  
                           TP.Privileges[ 0 ].LUID ) ) then  
  begin  
    if( aEnabled )then  
      TP.Privileges[0].Attributes:= SE_PRIVILEGE_ENABLED;  
    else  
      TP.Privileges[0].Attributes:= 0;  
    dwRetLen := 0;  
    Result := AdjustTokenPrivileges(Token,False,TP,  
                                    SizeOf( TPPrev ),  
                                    TPPrev,dwRetLen );  
  end;  
  CloseHandle( Token );  
end;  
function WinExit( iFlags : integer ) : boolean;  
//   возможные флаги: 
//   EWX_LOGOFF  
//   EWX_REBOOT  
//   EWX_SHUTDOWN  
begin  
  Result := True;  
  if( SetPrivilege( 'SeShutdownPrivilege', true ) ) then  
  begin  
    if( not ExitWindowsEx( iFlags, 0 ) )then  
    begin  
      Result := False;  
    end;  
    SetPrivilege( 'SeShutdownPrivilege', False )  
  end  
  else  
  begin  
    Result := False;  
  end;  
end; ![]()  | 
| 
		 
			 
			#7  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 Сида за своим дома, но дома в локалке еще ноутбук числица. В соседней комнате стоит. 
		
	
		
		
		
		
			
		
		
		
		
	
		
		
	
	
	   Ну вот, так ввожу ShutDown -m //BOOK -r -t 05 и нифига! | 
| 
		 
			 
			#8  
			
			
			
			
		 
		
		
	 | 
||||
		
		
  | 
||||
| 
	
	
		
			
			 shutdown -s -f -m book -t 60 
		
	
		
		
		
		
			
		
		
		
		
	
		
		
	
	
	 |