Rechnerrunterfahren Unter Xp usw.

Für allgemeine Fragen zur Programmierung mit PureBasic.
Sleimer
Beiträge: 3
Registriert: 15.09.2004 11:33

Rechnerrunterfahren Unter Xp usw.

Beitrag 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?
GPI
Beiträge: 1511
Registriert: 29.08.2004 13:18
Kontaktdaten:

Beitrag von GPI »

XP?
Einfach:

Shutdown.exe

(für die Parameter: start>ausführen cmd. "Shutdown /?")
CodeArchiv Rebirth: Deutsches Forum Github Hilfe ist immer gern gesehen!
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag 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:
Zuletzt geändert von Kaeru Gaman am 01.12.2004 23:15, insgesamt 1-mal geändert.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag 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
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Falko
Admin
Beiträge: 3535
Registriert: 29.08.2004 11:27
Computerausstattung: PC: MSI-Z590-GC; 32GB-DDR4, ICore9; 2TB M2 + 2x3TB-SATA2 HDD; Intel ICore9 @ 3600MHZ (Win11 Pro. 64-Bit),
Acer Aspire E15 (Win11 Home X64). Purebasic LTS 6.11b1
HP255G8 Notebook @AMD Ryzen 5 5500U with Radeon Graphics 2.10 GHz 3.4GHz, 32GB_RAM, 3TB_SSD (Win11 Pro 64-Bit)
Kontaktdaten:

Beitrag 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
Bild
Win11 Pro 64-Bit, PB_6.11b1
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Siehste

benutz Falco's Konstanten und Loopschleife zusammen mit meinen Proceduren dann is es komplett
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
mueckerich
Beiträge: 220
Registriert: 13.09.2004 11:33
Wohnort: Am schönsten Flecken der Erde, zwischen PC und Motorrad

Beitrag 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.
"Wenn Sie glauben, mich verstanden zu haben, dann habe ich mich falsch ausgedrückt" ( Alan Greenspan)
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

@Kaeru Gaman & mueckerich

Da nehm ich lieber folgenden Bildschirmschoner:
http://www.sysinternals.com/files/bluescrn.zip
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
stbi
Beiträge: 685
Registriert: 31.08.2004 15:39
Wohnort: Cleverly Hills

Beitrag 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
PB 4.02 XP Pro SP2 "Der Code ist willig, aber der Prozessor ist schwach."

Es gibt keine Vista-Witze. Es ist alles wahr!
GPI
Beiträge: 1511
Registriert: 29.08.2004 13:18
Kontaktdaten:

Beitrag von GPI »

Kaeru Gaman hat geschrieben:wozu MS die wohl braucht :twisted:
Um den Bluescreen zu testen?
CodeArchiv Rebirth: Deutsches Forum Github Hilfe ist immer gern gesehen!
Antworten