Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "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
1-72182
Артём К
2003-01-11 08:20
2003.01.23
:-) ReadOnly для ячейки StringGrida


1-72292
fifo
2003-01-15 12:57
2003.01.23
VarArrayCreate c типом Record


7-72569
cd1
2002-11-14 00:55
2003.01.23
Серийный номер материнской платы


3-72167
PKT
2002-12-26 04:59
2003.01.23
SUM -> NULL


14-72538
race1
2003-01-06 12:18
2003.01.23
вопросы





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский