Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.04.02;
Скачать: CL | DM;

Вниз

Блокирование запуска чужого приложения во время исполнения ...   Найти похожие ветки 

 
Gear   (2006-03-02 23:50) [0]

Здравствуйте! Реально ли сделать блокирование запуска чужого приложения во время исполнения своей программы?


 
Marser ©   (2006-03-02 23:54) [1]

Открыть его файл монопольно.


 
Gear   (2006-03-03 01:10) [2]

Что это означает?


 
Суслик ©   (2006-03-03 01:45) [3]

в общем случае сложно, но в частно, реально, имхо


 
Eraser ©   (2006-03-03 01:53) [4]


> Gear   (02.03.06 23:50)

реально. Установи соотв. ограниченые права той программе.


 
Германн ©   (2006-03-03 02:10) [5]

Если "чужое" == "любое другое", то - ДОС!
Если иначе - см. выше.


 
Джо ©   (2006-03-03 02:13) [6]

> [2] Gear   (03.03.06 01:10)
> Что это означает?


unit FileBlocker;

interface
uses Windows, SysUtils, Classes, Contnrs;

// Блокирует указанный файл до конца работы приложения
procedure BlockFile (AFileName: string);

implementation

type
 TFileBlocker = class
 private
   FHandle: THandle;
 public
   constructor Create (AFileName: string);
   destructor Destroy; override;
 end;

var
 FBlockedFile: TObjectList;

procedure BlockFile (AFileName: string);
begin
 FBlockedFile.Add(
   TFileBlocker.Create(AFileName)
 )
end;

{ TFileBlocker }

constructor TFileBlocker.Create(AFileName: string);
begin
 inherited Create;

 FHandle := CreateFile(PChar(AFileName),
   GENERIC_READ,
   0, // No sharing
   nil,
   OPEN_EXISTING,
   0,
   0
 );

 if FHandle = INVALID_HANDLE_VALUE then
   RaiseLastOSError;
end;

destructor TFileBlocker.Destroy;
begin
 CloseHandle (FHandle);
 inherited;
end;

initialization
 FBlockedFile := TObjectList.Create (True);

finalization
 FBlockedFile.Free;

end.


----
Пример использования:
----

procedure TForm1.Button1Click(Sender: TObject);
begin
 BlockFile("D:\Delphi\Delphi6\Projects\RasterLib\RR.exe");
end;




Страницы: 1 вся ветка

Текущий архив: 2006.04.02;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.048 c
1-1141280201
Димон
2006-03-02 09:16
2006.04.02
запуск Оутлук с адресом из таблицы


2-1142856157
olevacho_
2006-03-20 15:02
2006.04.02
FreeReport v2.33.


3-1139560059
Jappak
2006-02-10 11:27
2006.04.02
Как пеперать содержание ДБГрид на dbf таблицу?


15-1141471106
Pazitron_Brain
2006-03-04 14:18
2006.04.02
Службы на подобии web2mail.com


2-1142655934
koyama
2006-03-18 07:25
2006.04.02
Шифрование