Seite 3 von 3

Re: Tool zum PC herunterfahren

Verfasst: 23.07.2010 14:27
von oh... well?!
oh... well?! hat geschrieben:Dafür gibt es "EnableExplicit"
ok... schon wieder schlauer geworden.

Re: Tool zum PC herunterfahren

Verfasst: 23.07.2010 16:10
von Nino
oh... well?! hat geschrieben:hm... nach wikipedia kling für mich purebasic aber wie eine script sprache
bsp:
-in PB gibt es prototyping
-in PB wird auf den Deklarationszwang verzichtet,
Wenn es bei Wikipedia heißt, häufig vorhandene Merkmale von Scriptsprachen seien A oder B, dann bedeutet dass nicht im Umkehrschluss, dass eine Sprache mit Merkmal A oder B dadurch automatisch eine Scriptsprache ist. Und wie ich schon schrieb, ist PureBasic ausschließlich eine compilierte Sprache und damit keine Scriptsprache.

oh... well?! hat geschrieben:
oh... well?! hat geschrieben:Dafür gibt es "EnableExplicit"
ok... schon wieder schlauer geworden.
Bisonte war es, der
Dafür gibt es "EnableExplicit"
geschrieben hatte. Wenn Du noch lernst korrekt zu zitieren, dann klappt's auch mit dem Nachbarn.

Re: Tool zum PC herunterfahren

Verfasst: 23.07.2010 20:25
von Bisonte
oh... well?! hat geschrieben:... Is nur so, dass ich erst seit kurtzem Internet habe und eigentlich noch kein Plan davon hat was man in einem Forum tut und was man nicht tut, ...
Nino hat geschrieben:Wenn Du noch lernst korrekt zu zitieren, dann klappt's auch mit dem Nachbarn.
In diesem Sinne ... "kaaaaaaaaain straaaaaaaait !" , wie Werner jetz sacht ;)

Re: Tool zum PC herunterfahren

Verfasst: 24.07.2010 11:46
von ts-soft
Verbesserungsvorschläge:
Statt der shutdown.exe, welche nicht unter jeder Windows Version existiert und auch nicht dafür gedacht ist
(diese ist eigentlich für Administratoren gedacht um die Rechner im Netzwerk zu beenden usw.)
entsprechende API nutzen:

Code: Alles auswählen

Procedure EnableShutDown()
  Protected Privileges.TOKEN_PRIVILEGES
  Protected hToken.i
  OpenProcessToken_(GetCurrentProcess_(), #TOKEN_ADJUST_PRIVILEGES  | #TOKEN_QUERY, @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
Mit dieser Funktion holt das Programm sich das Recht zum beenden, danach funktioniert dann auch die entsprechende
API, wie zum Beispiel: ExitWindowsEx_()

Für die Zeitberechnung besser die Time/Datefunktionen von PB nutzen.

Ausser dem Ausschalten auch Abmelden, Ruhezustand/Energie sparen, StandBy usw. anbieten. Entsprechende APIs
befinden sich in der Powerprof.dll. Mithilfe dieser API kann man auch erfragen ob Ruhezustand usw. überhaupt
möglich sind.

Die nächste Erweiterung wäre dann ein reagieren auf das Beenden oder Starten von Programmen/Processen, was
für Einsteiger natürlich erstmal nicht umzusetzen ist, aber das kommt dann im Laufe der Zeit durch die Erfahrung,
die man so sammelt :wink:

Nur mal so als Anregung, was zu tun ist, um aus Deinem Tool was wirklich nützliches zu machen. So schwer, wie es
sich zunächst anhört ist es nicht, habe ein ähnliches Programm vor Jahren als Anfänger mal in PB entwickelt.

Gruß
Thomas

Re: Tool zum PC herunterfahren

Verfasst: 26.07.2010 10:31
von oh... well?!
danke erstmal für die Verbesserungsvorschläge. Weiß nur nich ob ich noch zeit in das Programm investieren soll, da ich momentan mehr mit meinem anderen Projekt (Physic+Game Engine...) beschäftigt bin, aber trotzdem gut zu wissen (das mit API)