AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Shortcut 1.0
Thema durchsuchen
Ansicht
Themen-Optionen

Shortcut 1.0

Ein Thema von TM. · begonnen am 8. Jun 2007 · letzter Beitrag vom 23. Jun 2007
Antwort Antwort
TM.
Registriert seit: 22. Jul 2006
hi

Vor einiger Zeit habe ich ein Programm erstellt, Shortcut. Es bietet die Funktionen, egal ob während eines Spiels oder nicht, einen Screenshot zu erstellen, den Computer herunterzufahren, oder ihn zu sperren. Steht aber auch alles in der beigelegten 'Readme-Datei'.

Für das Herunterfahren benütze ich die folgende Funktion:
Delphi-Quellcode:
function ExWindows(const AFlag: Word): Boolean;
var
  vi : TOSVersionInfo;
  hToken : THandle;
  tp : TTokenPrivileges;
  h : DWord;
begin
  result:= false;

  vi.dwOSVersionInfoSize:=SizeOf(vi);

  if GetVersionEx(vi) then
  begin
    if vi.dwPlatformId = VER_PLATFORM_WIN32_NT then
    begin
      // Windows NT
      // Achtung bei Delphi 2 muß @hToken stehen ...
      if OpenProcessToken(GetCurrentProcess,TOKEN_ADJUST_PRIVILEGES,hToken) then
      begin
        LookupPrivilegeValue(nil,'SeShutdownPrivilege',tp.Privileges[0].Luid);
        tp.PrivilegeCount := 1;
        tp.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
        h := 0;
        AdjustTokenPrivileges(hToken,False,tp,0,PTokenPrivileges(nil)^, h);
        CloseHandle(hToken);
        result := ExitWindowsEx(Aflag, 0);
      end;
    end
    else
    begin // Windows 95
      Result := ExitWindowsEx(Aflag, 0);
    end;
  end;
end;
Leider hat diese Funktion nciht bei Windows XP funktioniert, sodass ich mich über eine Alternativ-Lösung freuen würde.




Mit den ganzen Delphi-Dateien ist es jetzt ziemlich unübersichtlich, es besteht aus 3 dpr's
Angehängte Dateien
Dateityp: zip shortcut2_636.zip (416,5 KB, 48x aufgerufen)
 
Tommy1988
 
#2
  Alt 23. Jun 2007, 01:10
Dieses LOCK ist doch ein Scherz ODER ?

Taskmanager und diverse andere Shortcurs sind aufrufbar.

"save.sorce"

Es heißt SOURCE !
Das Passwort steht in der save.sorce ?! Wie sicher ist das denn?

Das einzig schne ist Logins.txt.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

 
Delphi 2006 Professional
 
#3
  Alt 23. Jun 2007, 01:55
Shortcut
  • Ein TrayIcon wäre schön, damit man es auch normal beenden kann und es nicht über den Taskamanger abschiessen muss zum Beenden.

Deinstallation
  • Das Löschen kann auch nicht funktionieren. Die Exe heißt "Shortcut.exe", du willst aber "Shortcut 1.0.exe" löschen.
  • Die Deinstallation kann nicht funktionieren. Du erstellst "Shortcut" in der Registry willst aber "Shortcut 1" deinstallieren.

Registry-Funktionen
  1. Die Methode OpenKey hat einen Rückgabewert, den man überprüfen könnte, was sehr sinnvoll wäre.
  2. Warum rufst du nicht [msdn]GetLastError[/i] auf, wenn etwas fehlschlägt und gibst eine sinnvolle Fehlermeldung aus?
  3. Zitat:
    "Beim Löschen der Datei ... ist ein Fehler aufgetreten!"
    Hier konnte die Datei nicht gelöscht werden, weil sie sich nicht mehr
    im selben Ordner befindet. Sollte dieser Fehler auftauchen, benachrichtigen sie mich"
    Kommst du dann bei mir vorbei? Warum prüfst du nicht vorher, ob die Datei auch existiert und löschst sie nur, wenn sie auch wirklich existiert?
  4. DeleteFileToRecycleBin, siehe Punkt 1.
  5. Wozu die künstliche Verzögerung mit dem Timer? Und dann noch das Sleep(400) in der Timer-Prozedur.

Lock
  • Das ist für die Katz: Taskmanager aufgerufen, Prozess beendet und schon war ich wieder in Windows.
  • Warum benutzt du nicht die Windows eigene und sichee Funktion: MSDN-Library durchsuchenLockWorkStation?

Also das sind dermaßen offensichtlicher Fehler, dass ich das Gefühl habe, du hast da nicht mal richtig getestet.
Michael
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:47 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz