Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как отловить событие сохранения?


Answer_i3 ©   (2008-03-27 14:19:00) 

Всем привет! Возникла проблема: нужно перехватить событие сохранения докумнта в стороннем приложении, и заменить процесс сохранеия своей процедурой. Надесь на помощь!
Заранее спасибо!


Сергей М.   (2008-03-27 22:15:00) [1]


> tesseract ©   (27.03.08 15:01) [13]


Все даже еще проще.

Ни для кого не новость, что бардак в "конторе" легко ликвидируется административными мерами. если , конечно же, во главе бардака с красным флагом не движется само руководство)


tesseract   (2008-03-27 15:01:00) [2]


> не у студента а у руководства компании, и делается это не
> для локальной сети...

У руководства компании идея насчёт перехвата диалога сохранения возникнуть не могла, у неё судя по всему идея, чтобы все рабочие чертежи хранились в одном месте.

И не лучше ли, сформировать требования ?  И например не API перехватывать, а написать драйвер виртуального диска и потом с этим  виртуальным диском без всяких перехватов работать ?  Или просто купить документ-сервер.


Сергей М.   (2008-03-27 14:53:00) [3]


> Answer_i3   (27.03.08 14:47) [8]


Подробнее гугли по теме "Перехват WinAPI"


tesseract   (2008-03-27 14:50:00) [4]


> А можно подробнее пожалуйста


Всё равно не получиться, это непросто, будоражит антивирус. Сколько я таких "проектов" видел.


Answer_i3   (2008-03-27 14:50:00) [5]

не у студента а у руководства компании, и делается это не для локальной сети... задача стоит не только в этом


tesseract   (2008-03-27 14:48:00) [6]


>  а разрешить только на удалённый сервер с помощью програмки
> которая с ним (сервером) будет общяться, отправлять и принимать
> файлы..


Опять у студента мировые идеи. Отбираем у пользователя все права на запись на локальной станции и назначаем "Мои документы" на нужный сетевой диск.


Answer_i3   (2008-03-27 14:47:00) [7]


> Здесь нужен целевой перехват ф-ции CreateFile в АП процесса
> целевого приложения.


А можно подробнее пожалуйста


Сергей М.   (2008-03-27 14:43:00) [8]


> нужно запретить сохраняться на локальный диск


Здесь нужен целевой перехват ф-ции CreateFile в АП процесса целевого приложения.


Answer_i3   (2008-03-27 14:37:00) [9]

что сделал я, я убрал из меню File  Save и Save As перехватил горячие клавищи для сохранения, но там можно сохранять с командной строки ввдея команду _qsave вот тут то я и застрял..


Answer_i3   (2008-03-27 14:36:00) [10]

ну мне нужно запретить сохраняться на локальный диск, а разрешить только на удалённый сервер с помощью програмки которая с ним (сервером) будет общяться, отправлять и принимать файлы..


tesseract   (2008-03-27 14:34:00) [11]


> AutoCAD


И зачем его перхватывать ? Можно просто export -плагин накатать.


Answer_i3   (2008-03-27 14:26:00) [12]

>Сергей М.
AutoCAD


tesseract   (2008-03-27 14:25:00) [13]


>  нужно перехватить событие сохранения докумнта в стороннем
> приложении, и заменить процесс сохранеия своей процедурой.
>  


Ставь FindFirstChangeNotification на каталог сохранения. А процесс сохранения для чужого приложения делаеться только переписывание адреса функции сохранения, и по этому поводу тебя насмерть захрюкает добрый антивирус Касперского.


Сергей М.   (2008-03-27 14:22:00) [14]

Что хоть за приложение-то ?)


Наверх

Титульная страница Поиск, карта сайта Написать письмо