Форум программистов, компьютерный форум CyberForum.ru

Существует ли возможность перехватить файловые операции? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Ускорение программы: сравнивание 4-х столов с пятым http://www.cyberforum.ru/cpp-beginners/thread463315.html
У меня естъ прoгрaмa кoтoрaя связaнa с SQL .Oнa делaет селект из 4 стoлoв и срaвнивaет с 5 стoлoм. Если в 5 стoле естъ тaкaя-же инфoрмaция кaк и в предудыщих 4 ,тo идет нa следющую стрoкы. Если нет тo удaляет вo всех четырех стoлaх. Oнa рaбoтaет oченъ медленнo, кaк ее ускoрит?
C++ В VC++ параметр const (_variant_t & data) непонятно какой должен быть Господа помогите кто чем может :-) ITablePtr pTable есть ф-я pTable->SetPrivateData(long dataTag,const _variant_t & data) с первым параметром понятно.. но со вторым возникают проблемы.. в VB туда пихается обект СDO //Вот выдержка из кода..на VB Public CDOSet As Object http://www.cyberforum.ru/cpp-beginners/thread463304.html
C++ Как сделать инсталяцию ODBC так, чтобы она напрягала клиента наименьшим образом?
Я использую в приложении драйвера ODBC, чтобы сохранять и читать данные в/из различных форматах (Access, DBase, Excel). При инсталяцци данного продукта на машине клиента требуется прописать настройки в Администраторе источников данных ODBC. Как сделать данную инсталяцию так, чтобы она напрягала клиента наименьшим образом?
C++ ктонить знает как достучаться до винампа?
как писать плюгины итд? как управлять воспроизведением итд не используя иметации нажатия на кнопки... помогите плз...
C++ Как достать инфу из вордовского файла не запуская ворд? http://www.cyberforum.ru/cpp-beginners/thread463260.html
мне нужно дастать инфу из DOC файла не запуская ворд... если у кого есть предложения - заранее благодарен)
C++ Есть ли у OpenGL свой формат 3d файла? Я хотел спросить есть у OpenGl свой формат 3d файла ? Нет ли у кого нибудь какого-нибудь примера, где трехмерный обьект загружается из файла формата например 3D MAX. ? С уважением Дмитрий подробнее

Показать сообщение отдельно
ioka
0 / 0 / 0
Регистрация: 17.10.2007
Сообщений: 16
07.01.2008, 05:15     Существует ли возможность перехватить файловые операции?
1. Список перехватываемых функций см. intercept.c array __FunctionList

2. В каждом модуле в Task т.е. exe и dlls есть импорт таблицы в которые при загрузке модуля память записываются адреса функций вызываемых в данном модуле но находящихся в других dll.

Как добраться до этих таблиц - см. в intercept.c функции InterceptFunctionsInModule (настройка адресов одного модуля) и InterceptFunctionsInTask (вызывает InterceptFunctionsInModule для всех модулей в Task)

Импорт таблицы содержаться в .idata section. доступ к этой секции через заголовок PE файла, заголовок
PE файла одинаков на диске и в памяти. Basis address dll это Instance Handle.

Замена статически линкованных dlls и exe происходит при загрузке dll перехвата vc1.dll в адресное пространство процесса(в качестве hook dll).
Динамически загруженные dlls заменяются в функции перехвата LoadLibrary и LoadLibraryEx поэтому эти фукции должны всегда перехватываться.

Кстати, см статью http://rsdn.ru/qna/?baseserv/hookapi.xml
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru