Форум: "WinAPI";
Текущий архив: 2003.01.23;
Скачать: [xml.tar.bz2];
Вниз
блокирование набора Найти похожие ветки
← →
Novichek (2002-11-05 19:15) [0]кто знает как блокировать набор "C:\", "D:\" в командной строке Explorer"a, Oper"ы, Netscape и др...
← →
Xemax (2002-11-05 19:18) [1]можно заблокировать целый том c помощью DeviceIoControl
← →
Novichek (2002-11-05 19:58) [2]в смысле?
← →
Novichek (2002-11-07 19:20) [3]кто знает как блокировать набор "C:\", "D:\" в командной строке Explorer"a, Oper"ы, Netscape и др...
← →
Cobalt (2002-11-08 10:47) [4]IMHO, никак.
← →
Xemax (2002-11-08 13:33) [5]>>DeviceIoControl
>>Novichek © (05.11.02 19:58)
>>в смысле?
MSDN
← →
Ketmar (2002-11-08 15:10) [6]хук на клаву? %-))
Satanas Nobiscum! 08-Nov-XXXVII A.S.
← →
Opuhshii (2002-11-08 15:37) [7]да писал уже сюда подобное,...
IShellWindows, IWebBrowser, DWebBrowserEvents, DWebBrowserEvents2, DShellWindowsEvents тебе нужны,..
← →
Opuhshii (2002-11-08 15:39) [8];) это только для IE, для NN видел что-то,. а вот для Oper"ы,. даже незнаю... ;))
← →
Novichek (2002-11-08 20:00) [9]я уже нашел как это сделать. можете не спорить.
← →
Cobalt (2002-11-08 22:06) [10]>Novichek © (08.11.02 20:00)
я уже нашел как это сделать. можете не спорить.
ну так, сказал бы...
← →
Novichek (2002-11-11 02:23) [11]>Cobalt © (08.11.02 22:06)
Исходник здесь:
http://www.sources.ru/delphi/delphi_get_active_url.shtml
я только добавил эти строки и все заработало как надо:
procedure TForm1.Timer1Timer(Sender: TObject);
var
adr_str1, adr_str2, adr_str3:string;
aa:string;
begin
adr_str1:=Get_URL("Netscape");
adr_str2:=Get_URL("IExplore");
adr_str3:=Get_URL("Opera");
label1.Caption:=adr_str1;
label2.Caption:=adr_str2;
label3.Caption:=adr_str3;
if pos("file",adr_str1)<>0 then
begin
aa:= copy(adr_str1,pos(",",adr_str1)+2,length(adr_str1)-pos(",",adr_str1)-5)
+" - Netscape";
postmessage(FindWindow(Nil, pchar(aa)), WM_close, 0, 0);
MessageDlg("Доступ к накопителям информации закрыт Администратором! Приложение будет закрыто!", mtError,[mbOk], 0, mbOk);
end;
if pos("file",adr_str2)<>0 then
begin
aa:= copy(adr_str2,pos(",",adr_str2)+2,length(adr_str2)-pos(",",adr_str2)-2)
+" - Microsoft Internet Explorer";
postmessage(FindWindow(Nil, pchar(aa)), WM_close, 0, 0);
MessageDlg("Доступ к накопителям информации закрыт Администратором! Приложение будет закрыто!", mtError,[mbOk], 0, mbOk);
end;
if pos("file",adr_str3)<>0 then
begin
aa:= copy(adr_str3,pos(",",adr_str3)+2+9,length(adr_str3)-pos(",",adr_str3)-12);
aa:="Opera - [ "+aa+" ]";
postmessage(FindWindow(Nil, pchar(aa)), WM_close, 0, 0);
MessageDlg("Доступ к накопителям информации закрыт Администратором! Приложение будет закрыто!", mtError,[mbOk], 0, mbOk);
end;
end;
← →
Reindeer Moss Eater (2002-11-11 09:34) [12]Это от происков младшей сестренки поможет. А вообще ерунда полная.
← →
Novichek (2002-11-11 18:34) [13]Reindeer Moss Eater (11.11.02 09:34)
а ты пробовал обойти это? при любой попытке выхода браузера на диски C, D, E.... он закрывается.
← →
Reindeer Moss Eater (2002-11-11 18:53) [14]>Novichek ©
Это обходить и не надо.
После того как мой браузер первый раз закроется таким образом, твоя программа с этой защитой больше не будет запускаться на моей машине.
← →
Novichek (2002-11-11 19:40) [15]Reindeer Moss Eater (11.11.02 18:53)
а я тебе ее насильно и не впариваю!!!! Это просто один из способов защиты от такого несанкционированного проникновения, как говорится: "Дешево и Сердито!"
← →
Reindeer Moss Eater (2002-11-11 19:59) [16]Так я и говорю, что
Это от происков младшей сестренки поможет. А вообще ерунда полная.
А ты несогласен.
← →
Reindeer Moss Eater (2002-11-11 20:02) [17]Я же не утверждал, что браузер не закроется.
← →
Novichek (2002-11-11 20:03) [18]в смысле ерунда? обьясни! или тут есть способ обхода от этой защиты?
← →
Reindeer Moss Eater (2002-11-11 20:05) [19]Например.
Ну загрузился я в безопастном режиме и где будет после этого твоя защита? Кто заставит меня её запустить?
← →
Novichek (2002-11-11 20:14) [20]ага... а если моя программа запускается через shell как эксплорер?
ну и где после этого твой безопасный режим?
← →
Reindeer Moss Eater (2002-11-12 08:42) [21]Это был только один из примеров.
Можно грузиться с поддержкой только командной строки. И не будет никакого Shell.
← →
Reindeer Moss Eater (2002-11-12 08:45) [22]А доступ к дискам будет.
← →
Reindeer Moss Eater (2002-11-12 08:48) [23]А если конкретно по приведенному тобой коду, то:
-Запускаем 2 экземпляра IE.
-Пишем в первом C:\
-Любуемся на появившийся MessageDlg, не закрывая его
-Пишем во втором экземпляре IE С:\ и смеемся от души
← →
Reindeer Moss Eater (2002-11-12 08:50) [24]Можно еще после получения корневого каталога стереть строку адреса не нажимая ENTER
← →
Novichek (2002-11-12 18:16) [25]что касается Reindeer Moss Eater (12.11.02 08:48)
убираем из программы MessageDlg и смеятся буду уже я, так как браузер закроется без предупреждения сразу же как только будет попытка зайти на диски.
что касается Reindeer Moss Eater (12.11.02 08:50)
программа узнаёт о том что было набрано "С:\" не с адресной строки, а из заголовка, во-о-он той тоненькой синенькой ленточки вверху.
Хорошо смеется тот, кто смеется .... дальше ты наверное знаешь. :))
и вообще, если у тебя есть какие то другие предложения по вопросу блокировки, я буду рад их выслушать.
← →
Opuhshii (2002-11-13 10:02) [26]пишем текстовый файл,. сохраняем как html, и открывает IE...
<BODY>
<TITLE>Диск Цэ:\</TITLE>
<iframe src="C:\" width="100%" height="100%"></iframe>
</BODY>
← →
Opuhshii (2002-11-13 10:06) [27]набери в Яндекс "пример IFRAME C:" ;))
"Хорошо смеется тот, кто смеется .... " - не факт,...
← →
_landy (2002-11-13 12:50) [28]Конкретно для IE можно еще установить ключ
HCLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\NoFileURL (DWORD) в 1, чтобы запретить адреса типа file://
← →
DVM (2002-11-13 12:59) [29]Это наверное некий Шелл для какого нибудь игрового клуба или Интернет-кафе? Да? Вообще проблема насущная на самом деле. Сам занимался этим долгое время. Полностью закрыть доступ к диску в IE нельзя!!!!.
Пример: Попробуйте при работающей проге сделать следующее:
Вид - Панели Обозревателя - Папки
Получим доступ на рабочий стол а там...
← →
DVM (2002-11-13 13:01) [30]А да забыл. Через Справку в IE можно добраться до дисков, не помню как только.
← →
Novichek (2002-11-13 18:18) [31]сколько раз говорить, что программа читает уже загруженный адрес, а не адресную строку, и как только находит слово "file", уже не важно что это за страница: просто набор "с:" или же html-файл загруженный с диска! - браузер моментально заканчивает свою работу и закрывается.
да вы, блин, хотя бы мой пример для начала попробовали запустить и попробовать к дискам прорваться под оперой, експлорером или нетскейпом, а уже потом что-то обсуждать!
← →
TankMan1 (2002-11-13 23:41) [32]Я думаю, что прожку, что написал Новичек, не обойти, но только тем путем, что она закрывает... т.е. вообще , это только лишь одна заплатка из комплекса, который нужно сделать, для полного запрещения доступа... потому что ну ни как эта программка не прекрывает, путь через любой Open/Save Dialog... ну и сложновато будет это сделать..
← →
Чих-пых (2002-11-20 00:15) [33]> сколько раз говорить, что программа читает уже загруженный
> адрес, а не адресную строку, и как только находит слово
> "file", уже не важно что это за страница: просто набор "с:"
> или же html-файл загруженный с диска! - браузер моментально
> заканчивает свою работу и закрывается.
Введи в адресной строке прямо как тут написано:
about:<title>Disk
← →
Ol. (2002-12-03 14:16) [34]Проще написать свой браузер, где нет ни справок, ни save/open диалогов и который фильтрует адресную строку и ссылки.
← →
TankMan (2002-12-04 01:35) [35]:) Точно.. что-то типа Оперы :) (я имею ввиду по моштабам) :)
← →
Diamond Cat (2002-12-04 02:46) [36]чегото я не понял, стоит проблеммае дать перечисленным программам отобразить в своем окне какой-нить файл, тогда приведенная попытка не состоятельна вот к примеру запустить explorer с заданным файлом , вводишь эту строку в "выполнить" ("C:\Program Files\Internet Explorer\IEXPLORE.EXE" c:\9asb1050.htm), еслиже надо не дать людям напечатать "c:\..." тогда конечно эта прога поработает, но нафига это
← →
Rooman (2002-12-09 18:21) [37]В Windows 2000 эта проблема решается элементарно:)
← →
TankMan (2002-12-09 20:41) [38]И как же это?
← →
alex134 (2002-12-09 21:01) [39]Ну вы блин загнали тут, раскритиковали бедного парня!
2 Novichek © :
Твое решение обходится элементарно многими способами.
Проблему можно решить так:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer norun=1
(<<точно не помню, поковыряйся).
Далее...
Панель "Папки" -
Пишем монитор, отслеживающий дочерние окна експлорера на предмет этой панели.
Далее...
Отслеживаем окна "открыть/сохранить".
Далее...
Устанавливаем atributes всех папок верхнего уровня hidden + запрет доступа к свойствам папок (параметр в реестре (точно не помню), ключ см. выше).
+Оставь свой вариант, как "страховку".
Работа с отловом окон очень не надежна. Кроме того, пользователь интернета в любой момент может скачать и запустить со своего сайта прогу, которая собьет всю эту защиту нахрен в один момент (я всегда так в клубах "играю"). И вообще, защита 99-й - гиблое дело, просто она не для тех целей была создана.
Ol. прав :
> Проще написать свой браузер, где нет ни справок, ни save/open
> диалогов и который фильтрует адресную строку и ссылки.
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2003.01.23;
Скачать: [xml.tar.bz2];
Память: 0.53 MB
Время: 0.013 c