Seite 1 von 2

Rechnerrunterfahren Unter Xp usw.

Verfasst: 01.12.2004 22:04
von Sleimer
Ich wollte meinen Rechner über einen Timer herunterfahren lassen Aber ich weis nicht wie? Hat da einer eine Ahnung wie man das machen. Kann Das seine daß ich die Rundll32.exe+ Parameter angeben muss?

Verfasst: 01.12.2004 22:46
von GPI
XP?
Einfach:

Shutdown.exe

(für die Parameter: start>ausführen cmd. "Shutdown /?")

Verfasst: 01.12.2004 23:14
von Kaeru Gaman
hey, wusstet ihr eigentlich, dass es in der rundll32 eine proc gibt, die einen bluescreen erzeugt?

also, nicht darstellt, sondern die echt und wirklich den rechner abstürzen lässt.

wozu MS die wohl braucht :twisted:

Verfasst: 01.12.2004 23:14
von ts-soft
Auf PureArea im Showcase findest Du mein TS-Shutdown mit Source-Code.

Programm macht unter anderem genau dieses.

Code: Alles auswählen

Procedure myEnableShutDown()
  Privileges.TOKEN_PRIVILEGES
  OpenProcessToken_(GetCurrentProcess_(), 40, @hToken)
  Privileges\PrivilegeCount           = 1
  Privileges\Privileges[0]\Attributes = #SE_PRIVILEGE_ENABLED
  LookupPrivilegeValue_(0, "SeShutdownPrivilege", @Privileges\Privileges[0]\Luid)
  AdjustTokenPrivileges_(hToken, 0, @Privileges, 0, 0, 0)
  CloseHandle_(hToken)
EndProcedure

Procedure myShutdownEx(flags.l)
  myEnableShutDown()
  ExitWindowsEx_(flags, 0)
EndProcedure
Den Ratschlag von GPI kannste natürlich auch befolgen, funzt dann aber unter Win9x nicht

Verfasst: 01.12.2004 23:15
von Falko
Timergesteuertes Shutdown?
Konnte leider den Source von NTQ nicht wiederfinden
und habe ihn nochmal hier hinkopiert.

Code: Alles auswählen

Procedure Shutdown() 
  #EWX_LOGOFF = 0 
  #EWX_SHUTDOWN = 1 
  #EWX_REBOOT = 2 
  #EWX_FORCE = 4 
  #EWX_POWEROFF = 8 
  #TOKEN_ADJUST_PRIVILEGES = 32    
  #TOKEN_QUERY = 8                
  #SE_PRIVILEGE_ENABLED = 2      
  #ANYSIZE_ARRAY = 1 
  #VER_PLATFORM_WIN32_NT = 2 
  ;#SE_SHUTDOWN_NAME = "SeShutdownPrivilege" 
  
  Structure MyLUID 
    LowPart.l 
    HighPart.l 
    Attributes.l 
  EndStructure 
  
  Structure MyTOKEN 
    PrivilegeCount.l 
    LowPart.l 
    HighPart.l 
    Attributes.l 
  EndStructure 
  
  Global hdlProcessHandle.l 
  Global hdlTokenHandle.l 
  Global tmpLuid.MyLUID 
  Global tkp.MyTOKEN 
  Global tkpNewButIgnored.MyTOKEN 
  Global lBufferNeeded.l 
  
  hdlProcessHandle = GetCurrentProcess_() 
  
  OpenProcessToken_(hdlProcessHandle, #TOKEN_ADJUST_PRIVILEGES | #TOKEN_QUERY, @hdlTokenHandle) 
  
  ; Get the LUID for shutdown privilege 
  SysName.s = "" + Chr(0) 
  Name.s = "SeShutdownPrivilege" + Chr(0) 
  Erg.l = LookupPrivilegeValue_(SysName, Name, @tmpLuid) 
  
  tmpLuid\Attributes = #SE_PRIVILEGE_ENABLED 
  tkp\PrivilegeCount = 1 
  tkp\LowPart = tmpLuid\LowPart 
  tkp\HighPart = tmpLuid\HighPart 
  tkp\Attributes = tmpLuid\Attributes 
  
  ; Enable the shutdown privilege in the access token of this process 
  Erg.l = AdjustTokenPrivileges_(hdlTokenHandle, 0, @tkp, SizeOf(MyTOKEN), @tkpNewButIgnored, @lblBufferNeeded) 
  Erg.l = ExitWindowsEx_((#EWX_POWEROFF | #EWX_FORCE), 0) 
EndProcedure 

hour.l = 00     ; hier Zeit anpassen
minute.l = 10 

Repeat 
  time.l = Date() 
  If Hour(time) = hour And Minute(time) = minute 
    Shutdown() 
    Break 
  ElseIf Hour(time) = hour And Minute(time) > minute 
    MessageRequester("ShutDownSystemByGivenTime", "Programm vorzeitig beendet") 
    Break 
  EndIf 
  Delay(1000)
ForEver

Verfasst: 01.12.2004 23:19
von ts-soft
Siehste

benutz Falco's Konstanten und Loopschleife zusammen mit meinen Proceduren dann is es komplett

Verfasst: 02.12.2004 08:14
von mueckerich
@Kaeru Gaman
hey, wusstet ihr eigentlich, dass es in der rundll32 eine proc gibt, die einen bluescreen erzeugt?

also, nicht darstellt, sondern die echt und wirklich den rechner abstürzen lässt.

wozu MS die wohl braucht
Über das Thema gab es auch schon mal einen Artikel in der Ct. Ich glaube es war in der Ausgabe 10/2004.

Oder Guckst Du hier http://www.admins-tipps.de/Microsoft_Be ... fdruck.htm

Für das soll es :roll: angeblich sein. Ein :twisted: wer anderes vermutet.

Verfasst: 02.12.2004 14:48
von ts-soft
@Kaeru Gaman & mueckerich

Da nehm ich lieber folgenden Bildschirmschoner:
http://www.sysinternals.com/files/bluescrn.zip

Verfasst: 02.12.2004 15:20
von stbi
ganz einfach auf Kommandozeilenebene eingeben:

Code: Alles auswählen

at 17:00 /every:Mo,Di,Mi,Do,Fr shutdown.exe
und Dein Rechner macht jeden Wochentag um 17:00 Uhr Feierabend

Verfasst: 02.12.2004 15:50
von GPI
Kaeru Gaman hat geschrieben:wozu MS die wohl braucht :twisted:
Um den Bluescreen zu testen?