Пароль на папки

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Dex
Постоялец
Постоялец
 
Сообщения: 346
Зарегистрирован: 09.08.2004 (Пн) 16:11

Пароль на папки

Сообщение Dex » 09.08.2004 (Пн) 21:13

Как сделать так чтоб когда открываешь папку вывадилось прога которая защищает ее паролем :?: :idea: :shock:

Approximator
Постоялец
Постоялец
 
Сообщения: 572
Зарегистрирован: 26.06.2004 (Сб) 3:10

Re: Пароль на папки

Сообщение Approximator » 10.08.2004 (Вт) 1:53

Dex писал(а):Как сделать так чтоб когда открываешь папку вывадилось прога которая защищает ее паролем :?: :idea: :shock:

Довольно странная постановка вопроса. Саму по себе папку (вообще) никак защитить от просмотра (вообще) нельзя. Можно навязать ограничение на доступ к ней конкретного приложения (но это мучительно). Существуют крипторы, которые хранят данные "папки" или "диска" в криптованном файле и эмулируют доступ к данным из этого файла через обычный интерфейс виртуальной папки...
С уважением, Approximator.

Sanya Z
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 240
Зарегистрирован: 18.08.2003 (Пн) 3:15
Откуда: Москва

Сообщение Sanya Z » 10.08.2004 (Вт) 2:01

Для этого твоя прога должна быть в автозагрузке, а отключить её как не фига делать. Так кому такая "защита" папок понадобится?
И пусть в моих поступках не было логики...

Approximator
Постоялец
Постоялец
 
Сообщения: 572
Зарегистрирован: 26.06.2004 (Сб) 3:10

Сообщение Approximator » 10.08.2004 (Вт) 2:07

Sanya Z писал(а):Для этого твоя прога должна быть в автозагрузке, а отключить её как не фига делать. Так кому такая "защита" папок понадобится?

Это не правда, можно подлючать свою программу, как подпроцесс Windows'ких библов, или наоборот сделать её диспетчером (a la DLL-"маршрутизатор") для них... короче решения имеются, но они требуют значительных затрат времени, а главное они не подходят для полноценных программных продуктов. Ибо в чужой комп не фиг лезть со своими извратами... :)
С уважением, Approximator.

GM
programador
programador
 
Сообщения: 1427
Зарегистрирован: 24.06.2003 (Вт) 15:56
Откуда: 194.67.52.100

Re: Пароль на папки

Сообщение GM » 10.08.2004 (Вт) 6:39

Dex писал(а):Как сделать так чтоб когда открываешь папку вывадилось прога которая защищает ее паролем :?: :idea: :shock:

Ну блин почти каждый знакомый спрашивает у меня как это сделать.:) А вообще на уровне драйвера возможно, отлавливать обращения к файловой системи, но врят ли ты это сделаеш. :?
الفيجوال بيسك الرابح

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 10.08.2004 (Вт) 9:35

На уровне драйвера файловой системы? Ну это ты загнул... Не для VB задача.
Lasciate ogni speranza, voi ch'entrate.

Sedge
Alternative Choice
Alternative Choice
Аватара пользователя
 
Сообщения: 1049
Зарегистрирован: 16.05.2002 (Чт) 18:23
Откуда: Somewhere-In-The-Net

Сообщение Sedge » 10.08.2004 (Вт) 9:39

А чем не устраивают возможности линейки win2k/XP?

sslion
Постоялец
Постоялец
 
Сообщения: 334
Зарегистрирован: 12.04.2002 (Пт) 9:44
Откуда: Russia

Сообщение sslion » 10.08.2004 (Вт) 16:37

А есть еще такой прикол:
Ищешь в реестре CLID папки "панель управления" - это то, что пишется в фигурных скобках {1234-3456-44566-45454-45454} - типа такого, потом мутишь таку хрень "C:\МояПапка\" переименовываешь в "С:\МояПапка.{CLID панели управления}" после этого твоя папка в проводнике будет иметь тип "панель управлени", а при открытии ее будет показывать соответствующее содержание.

В вин98 работает стопроцентно, в других ВИН не пробовал...

Реальный заработок в Интернете: http://www.bxod.com/newuser.asp?frid=166509
Подробней о заработке в Интернете: http://sslion.narod.ru

ANDLL
Великий гастроном
Великий гастроном
Аватара пользователя
 
Сообщения: 3450
Зарегистрирован: 29.06.2003 (Вс) 18:55

Сообщение ANDLL » 10.08.2004 (Вт) 18:11

А главное, очень популярное объяснение!
Гастрономия - наука о пище, о ее приготовлении, употреблении, переварении и испражнении.
Блог

Approximator
Постоялец
Постоялец
 
Сообщения: 572
Зарегистрирован: 26.06.2004 (Сб) 3:10

Сообщение Approximator » 11.08.2004 (Ср) 3:34

sslion писал(а):А есть еще такой прикол:
Ищешь в реестре CLID папки "панель управления" - это то, что пишется в фигурных скобках {1234-3456-44566-45454-45454} - типа такого, потом мутишь таку хрень "C:\МояПапка" переименовываешь в "С:\МояПапка.{CLID панели управления}" после этого твоя папка в проводнике будет иметь тип "панель управлени", а при открытии ее будет показывать соответствующее содержание.

В вин98 работает стопроцентно, в других ВИН не пробовал...

Да? Даже если не пользоваться проводником (или если отключить в меню Вид->Пресдавление как Web), а, например, FAR'ом? Imo, не очень хорошее предложение.
С уважением, Approximator.

Approximator
Постоялец
Постоялец
 
Сообщения: 572
Зарегистрирован: 26.06.2004 (Сб) 3:10

Сообщение Approximator » 11.08.2004 (Ср) 3:37

alibek писал(а):На уровне драйвера файловой системы? Ну это ты загнул... Не для VB задача.

Ну почему же, ведь по сути втраиваться будет только диспетчерская функция... Imo, язык в данном случае вообще не имеет значения. Другой вопрос, что релизация данного предложения (с использованием любого языка) вряд ли под силу автору топика.
С уважением, Approximator.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 11.08.2004 (Ср) 9:13

Approximator писал(а):Ну почему же, ведь по сути втраиваться будет только диспетчерская функция...

Не в том дело. Драйверы файловой системы загружаются, когда еще не загружен GUI, не функционирует OLE, msvbvm??. Так что VB-шная прога просто не сможет загрузится в этот момент.
Lasciate ogni speranza, voi ch'entrate.

ANDLL
Великий гастроном
Великий гастроном
Аватара пользователя
 
Сообщения: 3450
Зарегистрирован: 29.06.2003 (Вс) 18:55

Сообщение ANDLL » 11.08.2004 (Ср) 10:29

И еще:
У драйверов есть ряд типов сегментов, которые отсутствуют в обычных программах(к примеру неперемещаемые сегменты кода и данных). В VB программист не может задать, в каком сегменте какие данные(или код) размещаються. Следовательно не может написать и драйвер.
Гастрономия - наука о пище, о ее приготовлении, употреблении, переварении и испражнении.
Блог

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 11.08.2004 (Ср) 10:59

alibek писал(а):
Approximator писал(а):Ну почему же, ведь по сути втраиваться будет только диспетчерская функция...

Не в том дело. Драйверы файловой системы загружаются, когда еще не загружен GUI, не функционирует OLE, msvbvm??. Так что VB-шная прога просто не сможет загрузится в этот момент.

Туда можно бы загнать маленький ассемблерный переходник, который после загрузки системы всю работу будет перекладывать на VB-приложение.

Rouch
Новичок
Новичок
Аватара пользователя
 
Сообщения: 41
Зарегистрирован: 30.07.2004 (Пт) 7:26
Откуда: Немного отовсюду

Сообщение Rouch » 11.08.2004 (Ср) 12:26

tyomitch писал(а):Туда можно бы загнать маленький ассемблерный переходник, который после загрузки системы всю работу будет перекладывать на VB-приложение.
Проще сказать, чем сделать.

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 11.08.2004 (Ср) 13:08

Rouch писал(а):
tyomitch писал(а):Туда можно бы загнать маленький ассемблерный переходник, который после загрузки системы всю работу будет перекладывать на VB-приложение.
Проще сказать, чем сделать.

Я именно так писал на VB VIDC-кодек. Т.е. это осуществимо, было бы желание и время :-)

Approximator
Постоялец
Постоялец
 
Сообщения: 572
Зарегистрирован: 26.06.2004 (Сб) 3:10

Сообщение Approximator » 12.08.2004 (Чт) 2:15

alibek писал(а):
Approximator писал(а):Ну почему же, ведь по сути втраиваться будет только диспетчерская функция...

Не в том дело. Драйверы файловой системы загружаются, когда еще не загружен GUI, не функционирует OLE, msvbvm??. Так что VB-шная прога просто не сможет загрузится в этот момент.

А нам, что крайне необходимо, чтобы наша прога защищала доступ к папке ещё до того, как закончится загрузка системы? :) Не думал, что всё так серьёзно... моё решение таково (безо всяких "ассемблерных" вставок):
Ищем адрес (в файле драйвера) соответствующей (требуемой) функции, прописываем туда (разумеется, усё это мы делаем с помощью VB) маш. коды Call <адрес нашей диспетчерской процедуры>. Остальное вопрос сложности нашей диспетчерской процедуры, если уж невтерпёж, чтобы усё работало "с нуля", то формируй саму процедуру таким образом (перелинковку кода опять же делаем средствами VB), чтобы всё, что она юзает было при ней. Сегмент с кодом нашей процедуры также можно прописать в библу... и всё это доступно средствами VB. Далее перезагрузка и... результат в зависимости от собственных способностей.
С уважением, Approximator.

Dex
Постоялец
Постоялец
 
Сообщения: 346
Зарегистрирован: 09.08.2004 (Пн) 16:11

Сообщение Dex » 31.08.2004 (Вт) 16:13

Я вот подумал а что если через Visual Basic отслеживать обращение к папке :arrow: Если она открывается то закрыть её и открывать прогу с паролем :arrow: а в проге если правильный пароль открывать папку(открывать папку можно с помощью FSO) :?

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

Сообщение hCORe » 31.08.2004 (Вт) 19:18

А теперь представь на мгновение, что на конечной машине нет FSO :P
Так что открытие через FSO не лучшее решение. Да и перехват показа папок - само по себе нетривиальное решение. Либо пытаться перехватить вызовы API-функций, работающих с файловой системой, либо искать окна Проводника, FAR'a, Total Commander'a и пр. и контроллировать содержимое папок и т.п.
И то и другое либо сложно реализуемо на VB, либо не реализуемо вообще.
Моду создают модоки, а распространяют модозвоны.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 01.09.2004 (Ср) 11:35

Второе при том неверное принципиально. Мало ли, какие могут быть файловые менеджеры, всего не предусмотришь.
Отслеживать API-вызовы также не обязательно, достаточно отслеживать все открываемые файлы (папка - это тоже файл). Примерно то же (только для других целей) делают антивирусные мониторы.
Lasciate ogni speranza, voi ch'entrate.

ANDLL
Великий гастроном
Великий гастроном
Аватара пользователя
 
Сообщения: 3450
Зарегистрирован: 29.06.2003 (Вс) 18:55

Сообщение ANDLL » 01.09.2004 (Ср) 13:12

alibek писал(а):(папка - это тоже файл)


Вот уж не думал... Что правда?
Гастрономия - наука о пище, о ее приготовлении, употреблении, переварении и испражнении.
Блог

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 01.09.2004 (Ср) 14:05

Для файловой системы разница между папкой и файлом в одном атрибуте (vbDirectory). В NTFS есть небольшие ньюансы, а в FAT разницы нет никакой.
Lasciate ogni speranza, voi ch'entrate.

ANDLL
Великий гастроном
Великий гастроном
Аватара пользователя
 
Сообщения: 3450
Зарегистрирован: 29.06.2003 (Вс) 18:55

Сообщение ANDLL » 01.09.2004 (Ср) 18:54

Гм. А у файла есть еще содержимое. т.е в фаловой таблице храняться номера(диапозоны) тех кластеров(или как там), где находиться содержимое файла.
Наличие атрибутов(и параметров безопасности), пожалуй единственная общая черта файлов и папок. Ну еще наличие имени.
И что папку тоже можно открыть используя FileOpen?
Гастрономия - наука о пище, о ее приготовлении, употреблении, переварении и испражнении.
Блог

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 01.09.2004 (Ср) 19:20

ANDLL писал(а):Гм. А у файла есть еще содержимое. т.е в фаловой таблице храняться номера(диапозоны) тех кластеров(или как там), где находиться содержимое файла.

В содержимом папки хранится список её файлов, с атрибутами.

ANDLL писал(а):Наличие атрибутов(и параметров безопасности), пожалуй единственная общая черта файлов и папок. Ну еще наличие имени.

Нет, к сожалению ;-) папки в FAT от файлов действительно отличаются очень мало...


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex-бот и гости: 23

    TopList