Hallo erstmal ,
unzwar habe ich gestern hier im Forum nach einem Befehl gesucht mit dem ich den pc herunterfahre.
DAs funktioniert auch alles und als ich heute das Project öffnen wollte und nochmal compielieren wollte sagte mein Delphi mir folgendes:
Vorgang kann nicht erzeugt werden.
Nach dem Klick auf den Detailbutton wurde mir folgende Fehlermeldung gezeigt:
+ $23[20A90294]{dbkdebugide100.bpl} Debug.Debug.TDebugger.DBKError (Line 11189, "Debug.pas" + 3) + $23
+ $8[20A633F9]{dbkdebugide100.bpl} DbkHelper.DbkHelper.CheckRetVal (Line 267, "DbkHelper.pas" + 4) + $8
+ $36[20A8DF69]{dbkdebugide100.bpl} Debug.Debug.TDebugger.DoCreateProcess (Line 10146, "Debug.pas" + 28) + $36
+ $27[20A8E078]{dbkdebugide100.bpl} Debug.Debug.TDebugger.CreateProcess (Line 10172, "Debug.pas" + 6) + $27
+ $29[20A8EC16]{dbkdebugide100.bpl} Debug.Debug.TDebugger.Run (Line 10616, "Debug.pas" + 50) + $29
+ $33[20A8F38A]{dbkdebugide100.bpl} Debug.Debug.TDebugger.Run (Line 10864, "Debug.pas" + 69) + $33
+ $2[20A8A496]{dbkdebugide100.bpl} Debug.Debug.TDebugger.Run (Line 8789, "Debug.pas" + 0) + $2
+ $A[00413687]{
bds.exe } AppMain.AppMain.TAppBuilder.FreeToolbarStreams (Line 5338, "ui\AppMain.pas" + 6) + $A
+ $6[5205CA19]{vcl100.bpl } Controls.Controls.TWinControl.WndProc (Line 7246, "Controls.pas" + 105) + $6
+ $5[5207124D]{vcl100.bpl } Forms.Forms.TCustomForm.WndProc (Line 3284, "Forms.pas" + 125) + $5
+ $6[5205C1A4]{vcl100.bpl } Controls.Controls.TWinControl.MainWndProc (Line 7021, "Controls.pas" + 3) + $6
+ $0[51F60BC0]{rtl100.bpl } Classes.Classes.StdWndProc (Line 11572, "classes.pas" + 8) + $0
+ $24D[77008804]{USER32.dll } GetWindowLongW + $24D
+ $3A6[7700895D]{USER32.dll } GetWindowLongW + $3A6
+ $4F1[77008AA8]{USER32.dll } GetWindowLongW + $4F1
+ $A[770090FB]{USER32.dll } DispatchMessageA + $A
hier ist mal mein Quelltext:
Delphi-Quellcode:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;
type
TForm1 =
class(TForm)
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
function ExitWin(flag:word): Boolean;
var vi : TOSVersionInfo;
hToken : THandle;
tp : TTokenPrivileges;
h : DWord;
begin
//result := false;
vi.dwOSVersionInfoSize:=SizeOf(vi);
GetVersionEx(vi);
if vi.dwPlatformId = VER_PLATFORM_WIN32_NT
then // Windows NT
begin
// Achtung bei Delphi 2 muß @hToken stehen ... !!!! ?????
OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES,hToken);
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(flag,0);
end
else // Windows 95
begin
Result := ExitWindowsEx(flag,0);
end;
end;
{EWX_LOGOFF", "EWX_REBOOT" oder "EWX_SHUTDOWN"}
end.
Hoffe mir kann jemand helfen
Mfg Andi