Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   Всплывающее окно при открытии папки (https://forum.antichat.xyz/showthread.php?t=95865)

clin 11.12.2008 08:58

Всплывающее окно при открытии папки
 
Как реализовать, чтобы при входе в определённую папку выскакивало окно-предупреждение с надписью и кнопкой ОК и всё. Вижу это так: exe or bat файл лежит в этой папке (в той самой, при входе в которую это окно будет "выскакивать") и работает как автозапуск в папке.. Вообщем очень нужно. Заранее спс.

slesh 11.12.2008 09:53

Единственные нормальные способы это только перехват функции чтения каталога и самый нормальный способ это только драйвер который перехватывает ядерную функцию на чтение каталога и сообщает об этом в его юзермодную часть.

clin 11.12.2008 10:07

А если написать autorun.inf? Только не знаю, что там прописать..

-=lebed=- 11.12.2008 10:11

Цитата:

Сообщение от clin
А если написать autorun.inf? Только не знаю, что там прописать..

Код:

[autorun]
Open = имя_запускаемого_файла


clin 11.12.2008 10:20

Цитата:

Сообщение от -=lebed=-
Код:

[autorun]
Open = имя_запускаемого_файла


Не получилось.
http://pic.ipicture.ru/uploads/081211/WR5sn95Pqv.jpg

clin 11.12.2008 10:22

менял и на *.bat, и путь указывал не полный, а только 1.txt..=\

-=lebed=- 11.12.2008 10:25

Цитата:

Сообщение от clin
менял и на *.bat, и путь указывал не полный, а только 1.txt..=\

inf-файл должен строго называться autorun.inf и должен лежать в корне диска.

clin 11.12.2008 10:47

тоже самое..
http://pic.ipicture.ru/uploads/081211/d5CdfcM4vA.jpg

-=lebed=- 11.12.2008 10:51

Цитата:

Сообщение от clin

Открываемый файл должен быть exe, автозапуск должен быть включен, должна работать служба определения оболочки оборудования.

slesh 11.12.2008 10:57

Но в любом случае это не сработает если отключен авторан и ты юзаешь какойнить файловый менеджер. + это тока на корневые каталоги дисков. И установить на отдельный каталог - НЕЛЬЗЯ.

clin 11.12.2008 10:58

Определение оборудования оболочки - вкючено, авто;
Автозапуск, это служба планировщика заданий?

preda1or 11.12.2008 10:58

.folder еще никто не отменял...

clin 11.12.2008 11:07

Цитата:

Сообщение от preda1or
.folder еще никто не отменял...

это что?

preda1or 11.12.2008 11:11

Попробуй создать файл "folder.folder" - увидишь. А более лудший вариант снизу.

preda1or 11.12.2008 11:13

а именно:
Цитата:

[HKEY_CLASSES_ROOT\Folder\Shell\explore\command\]
Цитата:

[HKEY_CLASSES_ROOT\Folder\Shell\open\command\]

Дальше пашите от этого.
И не забываем говорить спасибо.

-=lebed=- 11.12.2008 11:32

Если система <= Sp2 то может помочь WMF-сплоит. Правда будет запускаться не всегда - а только когда смотриш папку в проводнике в режиме показывать эскизы...

preda1or 11.12.2008 11:33

-=lebed=-
А разве то, что я предложил, не является самым универсальным и легким методом?)

St0nX 11.12.2008 12:02

Можно просто окна перебирать. Обычно в заголовке указывается путь если совпадает то папка открыта. читаеш заголовок функцией GetWindowText и сравниваеш а проще вообще получить хендл активного окна с помощью Getforegroundwindow() и проверить его заголовок.

bons 11.12.2008 19:40

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


Время: 00:32