Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Операционные системы > Операционные системы общие вопросы
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.08.2010, 17:05   #1
S_Yevgeniy
Форумчанин
 
Аватар для S_Yevgeniy
 
Регистрация: 08.07.2009
Сообщений: 246
Вопрос Ограничить подключения USB устройств.

Добрый вечер, подскажите пожалуйста можно ли закрыть доступ в Windows к возможности подключать USB. При этом один разъем должен работать для принтера и кроме принтера туда нечего не могли включить.
Заранее спасибо. удачи всем в делах.
Да прибудет с Вами свет и радость!!!
S_Yevgeniy вне форума Ответить с цитированием
Старый 06.08.2010, 22:33   #2
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,742
По умолчанию

можно так >>> http://www.programmersforum.ru/showt...&highlight=usb и можно стандартными средствами (см. ниже)

...и вам удачи
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 09.08.2010, 13:36   #3
S_Yevgeniy
Форумчанин
 
Аватар для S_Yevgeniy
 
Регистрация: 08.07.2009
Сообщений: 246
По умолчанию

В очередной раз огромное вам спасибо!!!

Цитата:
Сообщение от raxp Посмотреть сообщение
вот только мне нужен не ключ флешка а закрыть полностью доступ к иным USB устройствам за исключением установленного принтера ну если это возможно. Так как физически заливать термо-клеем порты не хочется.
Да прибудет с Вами свет и радость!!!

Последний раз редактировалось S_Yevgeniy; 09.08.2010 в 14:57.
S_Yevgeniy вне форума Ответить с цитированием
Старый 09.08.2010, 16:17   #4
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,742
По умолчанию

...еще раз пройдитесь в ту ссылку и более внимательно ...там есть разблокирование определенного USB устройства (а таковым является и принтер), что эквивалентно блокированию всех остальных кроме того, вы очевидно не читали - <контроль_использования_usb_накопит елей_в_windows_server2008.pdf >

...конкретно пост этот и этот (см. функцию - removeUSB)
Код:
function removeUSB(remove: boolean; num_device: smallint): tstringlist;
const GUID_DEVCLASS_DISKDRIVE: TGUID = (D1: $4D36E967; D2: $E325; 
D3: $11CE; D4: ($BF, $C1, $08, $00, $2B, $E1, $03, $18));
var hDevInfoSet: HDEVINFO;
    DevInfo: SP_DEVINFO_DATA;
    i: Integer;
    Parent: DWORD;
    VetoName: PChar;
begin
 result:= tstringlist.create;
 //
 DevInfo.cbSize := sizeof(SP_DEVINFO_DATA);
 hDevInfoSet := SetupDiGetClassDevsA(@GUID_DEVCLASS_DISKDRIVE, nil, 0, 2);
 if hDevInfoSet = INVALID_HANDLE_VALUE then exit;

 if (remove)and(num_device<> -1) then
  if SetupDiEnumDeviceInfo(hDevInfoSet, num_device, @DevInfo) then
   if (IsUSBDevice(DevInfo.DevInst))and(CM_Get_Parent(@Parent, DevInfo.DevInst, 0) = 0)
    then CM_Request_Device_Ejecta(Parent, nil, @VetoName, MAX_PATH, 0);

 i:= 0;
 while (SetupDiEnumDeviceInfo(hDevInfoSet, i, @DevInfo)) do begin
  result.Add(GetDeviceName(hDevInfoSet, @DevInfo));

  if (remove)and(num_device= -1) then begin
   if (IsUSBDevice(DevInfo.DevInst)) and (CM_Get_Parent(@Parent, DevInfo.DevInst, 0) = 0) then begin
    VetoName := GetMemory(260);
    if (CM_Request_Device_EjectA(Parent, nil, VetoName, 260, 0) <> 0) then begin
     if (CM_Locate_DevNodeA(@Parent, VetoName, 0) <> 0) then begin
      FreeMemory(VetoName);
      continue
     end;
     FreeMemory(VetoName);
     if (CM_Request_Device_EjectA(Parent, nil, nil, 0, 0) <> 0) then continue
    end;
    FreeMemory(VetoName);
    break
   end
  end;
  inc(i)
 end;
 //
 SetupDiDestroyDeviceInfoList(hDevInfoSet)
end;
удачи
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation

Последний раз редактировалось raxp; 09.08.2010 в 16:21.
raxp вне форума Ответить с цитированием
Старый 10.08.2010, 15:17   #5
S_Yevgeniy
Форумчанин
 
Аватар для S_Yevgeniy
 
Регистрация: 08.07.2009
Сообщений: 246
По умолчанию

Огромное Вам спасибо за помощь.
Еще спасибо за журнал с нетерпением ждем очередной.
Всего Вам доброго.
Да прибудет с Вами свет и радость!!!
S_Yevgeniy вне форума Ответить с цитированием
Старый 31.05.2017, 16:17   #6
Beslan_AG
Пользователь
 
Регистрация: 31.05.2017
Сообщений: 18
По умолчанию

а какие модули необходимо подключать ????
Beslan_AG вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск сетевых устройств Litok Общие вопросы .NET 11 13.05.2010 21:32
Детектирование устройств. Devourer12345 Помощь студентам 5 12.04.2010 23:21
Как скрыть значок определённого подключения из папки "сетевые подключения"? mr_alex Win Api 2 05.11.2009 10:40
После подключения внутреннего кардридера перестали определяться дополнительные USB- порты vasek123 Компьютерное железо 1 10.08.2009 22:28
Список устройств CraZZy RabbIt Win Api 5 10.03.2009 13:15