lord_viper
دوشنبه 03 فروردین 1388, 23:38 عصر
با سلام
کدی دیدم برای محافظت از پروسه که اگه برنامه رو به هر نحوی می بستین سیستم در جا رستارت میشد اون کد رو به دلفی تبدیل کردم
وقتی از تو دلفی کد رو اجرا میکنم به خوبی عمل میکنه اما وقتی پروژه رو build میکنم و از تو پوشه project فایل exe برنامه رو اجرا میکنم بدون restart شدن پروسه terminate میشه
کسی میدونه مشکل از چیه؟
program Project4;
uses
Forms,Windows,
Unit4 in 'Unit4.pas' {Form4};
type
TRtlSetProcessIsCritical = function(NewValue:Boolean; var OldValue:Boolean; IsWinlogon:Boolean): Cardinal; stdcall;
{$R *.res}
var
RtlSetProcessIsCritical: TRtlSetProcessIsCritical;
Hnd: THandle;
j:Boolean;
begin
j:=False;
Hnd := LoadLibrary('ntdll.dll');
RtlSetProcessIsCritical := GetProcAddress(Hnd, 'RtlSetProcessIsCritical');
RtlSetProcessIsCritical(true,j,false);
while true do
begin
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.CreateForm(TForm4, Form4);
Application.Run;
end;
end.
از debug privilage هم استفاده کردم اما باز هم مشکل سر جاش هست فقط وقتی برنامه از تو دلفی run میشه درست جواب میده
کدی دیدم برای محافظت از پروسه که اگه برنامه رو به هر نحوی می بستین سیستم در جا رستارت میشد اون کد رو به دلفی تبدیل کردم
وقتی از تو دلفی کد رو اجرا میکنم به خوبی عمل میکنه اما وقتی پروژه رو build میکنم و از تو پوشه project فایل exe برنامه رو اجرا میکنم بدون restart شدن پروسه terminate میشه
کسی میدونه مشکل از چیه؟
program Project4;
uses
Forms,Windows,
Unit4 in 'Unit4.pas' {Form4};
type
TRtlSetProcessIsCritical = function(NewValue:Boolean; var OldValue:Boolean; IsWinlogon:Boolean): Cardinal; stdcall;
{$R *.res}
var
RtlSetProcessIsCritical: TRtlSetProcessIsCritical;
Hnd: THandle;
j:Boolean;
begin
j:=False;
Hnd := LoadLibrary('ntdll.dll');
RtlSetProcessIsCritical := GetProcAddress(Hnd, 'RtlSetProcessIsCritical');
RtlSetProcessIsCritical(true,j,false);
while true do
begin
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.CreateForm(TForm4, Form4);
Application.Run;
end;
end.
از debug privilage هم استفاده کردم اما باز هم مشکل سر جاش هست فقط وقتی برنامه از تو دلفی run میشه درست جواب میده