Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Как можно блокировади диск C Добавлено: 05.09.06 16:43  

Автор вопроса:  KEP
Кто знает как можно блокировать обращение к диску с???? Очень нужна защита от злобных юзеров.

Знаю как блокировать CD Лоток.

Option Explicit

Private Const FILE_DEVICE_MASS_STORAGE As Long = &H2D
Private Const IOCTL_STORAGE_BASE As Long = FILE_DEVICE_MASS_STORAGE
Private Const FILE_READ_ACCESS As Long = &H1
Private Const GENERIC_READ As Long = &H80000000
Private Const FILE_SHARE_READ As Long = &H1
Private Const FILE_SHARE_WRITE As Long = &H2
Private Const OPEN_EXISTING As Long = 3

Private Type PREVENT_MEDIA_REMOVAL
PreventMediaRemoval As Long
End Type

Private Declare Function CreateFile Lib "kernel32" Alias "CreateFileA" (ByVal lpFileName As String, ByVal dwDesiredAccess As Long, ByVal dwShareMode As Long, lpSecurityAttributes As Any, ByVal dwCreationDisposition As Long, ByVal dwFlagsAndAttributes As Long, ByVal hTemplateFile As Long) As Long
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Private Declare Function DeviceIoControl Lib "kernel32" (ByVal hDevice As Long, ByVal dwIoControlCode As Long, lpInBuffer As Any, ByVal nInBufferSize As Long, lpOutBuffer As Any, ByVal nOutBufferSize As Long, lpBytesReturned As Long, lpOverlapped As Any) As Long


Private Function CTL_CODE(lngDeviceType, lngFunction, lngMethod, lngAccess) As Long
CTL_CODE = ((lngDeviceType * (2 ^ 16)) Or (lngAccess * (2 ^ 14)) Or (lngFunction * (2 ^ 2)) Or lngMethod)
End Function

Public Function LockCD(ByVal Locked As Boolean, ByVal DriveL as String) As Boolean

Dim BRet As Long
Dim IOCTL_STORAGE_MEDIA_REMOVAL As Long
Dim xBuf As PREVENT_MEDIA_REMOVAL
Dim cdVolHandle As Long
Dim Retrn As Long
IOCTL_STORAGE_MEDIA_REMOVAL = CTL_CODE(IOCTL_STORAGE_BASE, &H201, 0, FILE_READ_ACCESS)
DriveL = "\\.\" & DriveL & ":"
cdVolHandle = CreateFile(DriveL, GENERIC_READ, FILE_SHARE_READ Or FILE_SHARE_WRITE, ByVal 0, OPEN_EXISTING, 0, 0)
If cdVolHandle = -1 Then
LockCD = False
Exit Function
End If
If Locked = True Then
xBuf.PreventMediaRemoval = 1
Else: xBuf.PreventMediaRemoval = 0
End If
Retrn = DeviceIoControl(cdVolHandle, IOCTL_STORAGE_MEDIA_REMOVAL, xBuf, Len(xBuf), ByVal 0, 0, BRet, ByVal 0)
Call CloseHandle(cdVolHandle)
If Retrn = 0 Then
LockCD = False
Else: LockCD = True
End If
End Function

Ответить

  Ответы Всего ответов: 8  

Номер ответа: 1
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #1 Добавлено: 05.09.06 17:00
ACL подкрутить нужно.

Ответить

Номер ответа: 2
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #2 Добавлено: 05.09.06 22:05
перехват апи...

Ответить

Номер ответа: 3
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #3 Добавлено: 05.09.06 22:14
Также можно програмно перестать подавать ток на HDD

Ответить

Номер ответа: 4
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #4
Добавлено: 05.09.06 23:29
приклеить в нужном месте на мониторе кусочек черной непросвечивающей бумаги :P ?

Ответить

Номер ответа: 5
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #5 Добавлено: 06.09.06 00:21
Вытящить винчестер из системного блока.

Ответить

Номер ответа: 6
Автор ответа:
 KEP



Вопросов: 44
Ответов: 119
 Профиль | | #6 Добавлено: 06.09.06 03:39
Умно. (Еще можно выбросить комп в космас) :)))

Ответить

Номер ответа: 7
Автор ответа:
 Viper



ICQ: 249094859 

Вопросов: 0
Ответов: 310
 Профиль | | #7 Добавлено: 06.09.06 10:57
Фраза "Блокировка диска С" - должна проходить по разделу юмора и больше нигде. Злобных юзеров надо наделять нужными правами на доступ к нужным им файлам и папкам и вся их злобность уйдет в никуда.

Ответить

Номер ответа: 8
Автор ответа:
 LamerOnLine



ICQ: 334781088 

Вопросов: 108
Ответов: 2822
 Профиль | | #8 Добавлено: 06.09.06 11:08
Думается, для юзеров достаточно RestrictRun, все остальное - извращения ламадмина.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам