Аппаратные и программные средства защиты информации. Андрианов В.П. - 11 стр.

UptoLike

Составители: 

11
б) встроить в приложение проверку наличия внешнего носителя с конкретным
серийным номером.
3. Рекомендации при разработке приложения.
3.1. Для определения серийного номера внешнего устройства создайте
отдельное приложение и используйте в нем стандартный компонент
TDriveComboBox. Возможный вариант интерфейса вспомогательного приложения
приведен на рис.1
Рис.1 Внешний вид окна вспомогательного приложения
3.2. Для определения подключенных к компьютеру внешних устройств при
встраивании защиты в программу используйте функции GetLogicalDrives: Integer
и GetDriveType(Name: PChar): Integer.
Текст процедуры, выводящей в компонент TListBox список подключенных
внешних устройств компьютера:
procedure TForm1.SpeedButton1Click(Sender: TObject);
var i, mask: Integer;
S: String;
begin
mask := GetLogicalDrives;
I := 0;
while mask <> 0 do
begin
s := chr(ord('a') + i) + ':\';
if (mask and 1) <>0 then
case GetDriveType(PChar(S)) of
0: ListBox1.Items.Add(S + 'unknow');
1: ListBox1.Items.Add(S + 'not exists');
Drive_Removable: ListBox1.Items.Add(S + 'removable'); //floppy
Drive_Fixed: ListBox1.Items.Add(S + 'fixed'); //hard
Drive_Remote: ListBox1.Items.Add(S + 'network');
Drive_CDROM: ListBox1.Items.Add(S + 'CD_ROM'); //cd
Drive_RamDisk: ListBox1.Items.Add(S + 'RAM');
end; //case
inc(i);
mask := mask shr 1;
end;
end;
                                                                           11
  б) встроить в приложение проверку наличия внешнего носителя с конкретным
 серийным номером.

                3. Рекомендации при разработке приложения.

  3.1. Для определения серийного номера внешнего устройства создайте
 отдельное приложение и используйте в нем стандартный компонент
 TDriveComboBox. Возможный вариант интерфейса вспомогательного приложения
 приведен на рис.1




                Рис.1 Внешний вид окна вспомогательного приложения

 3.2. Для определения подключенных к компьютеру внешних устройств при
встраивании защиты в программу используйте функции GetLogicalDrives: Integer
и GetDriveType(Name: PChar): Integer.
 Текст процедуры, выводящей в компонент TListBox список подключенных
внешних устройств компьютера:
 procedure TForm1.SpeedButton1Click(Sender: TObject);
 var i, mask: Integer;
    S: String;
 begin
   mask := GetLogicalDrives;
   I := 0;
   while mask <> 0 do
   begin
      s := chr(ord('a') + i) + ':\';
      if (mask and 1) <>0 then
      case GetDriveType(PChar(S)) of
   0: ListBox1.Items.Add(S + 'unknow');
   1: ListBox1.Items.Add(S + 'not exists');
   Drive_Removable: ListBox1.Items.Add(S + 'removable'); //floppy
   Drive_Fixed: ListBox1.Items.Add(S + 'fixed');          //hard
   Drive_Remote: ListBox1.Items.Add(S + 'network');
   Drive_CDROM: ListBox1.Items.Add(S + 'CD_ROM');          //cd
   Drive_RamDisk: ListBox1.Items.Add(S + 'RAM');
      end; //case
      inc(i);
      mask := mask shr 1;
   end;
 end;