Недавно добавленные исходники

•  DeLiKaTeS Tetris (Тетрис)  4 811

•  TDictionary Custom Sort  6 814

•  Fast Watermark Sources  6 597

•  3D Designer  9 558

•  Sik Screen Capture  6 932

•  Patch Maker  7 382

•  Айболит (remote control)  7 329

•  ListBox Drag & Drop  6 187

•  Доска для игры Реверси  98 154

•  Графические эффекты  7 500

•  Рисование по маске  6 788

•  Перетаскивание изображений  5 643

•  Canvas Drawing  6 021

•  Рисование Луны  5 813

•  Поворот изображения  5 264

•  Рисование стержней  3 857

•  Paint on Shape  3 015

•  Генератор кроссвордов  3 966

•  Головоломка Paletto  3 146

•  Теорема Монжа об окружностях  3 980

•  Пазл Numbrix  2 630

•  Заборы и коммивояжеры  3 442

•  Игра HIP  2 359

•  Игра Go (Го)  2 271

•  Симулятор лифта  2 675

•  Программа укладки плитки  2 235

•  Генератор лабиринта  2 786

•  Проверка числового ввода  2 395

•  HEX View  2 729

•  Физический маятник  2 420

 
скрыть

Как шифровать файлы при помощи windows NTFS API



{....}

{
Dieser Tip funktioniert ab Windows 2000 (NTFS 5)

Diese 2 Funktionen sind in windows.pas definiert, jedoch sind sie dort
falsch definiert. Deshalb hier die eigene Definition.
}

{
This tip works with Windows 2000 (NTFS 5) and later

These 2 functions are defined in windows.pas, but they're defined wrong. In this
case our own definition.
}

function EncryptFile(lpFilename: PChar): BOOL; stdcall;
  external advapi32 name 'EncryptFileA';

function DecryptFile(lpFilename: PChar; dwReserved: DWORD): BOOL; stdcall;
  external advapi32 name 'DecryptFileA';

{....}

procedure TForm1.Button1Click(Sender: TObject);
begin
  if not EncryptFile('c:\temp') then
    ShowMessage('Cannot encrypt directory.');
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  if not DecryptFile('c:\temp', 0) then
    ShowMessage('Cannot decrypt directory.');
end;