<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=26341&amp;view=findpost&amp;p=185908</guid>
        <pubDate>Wed, 15 Oct 2003 14:51:17 +0000</pubDate>
        <title>Как просмотреть экспорт. функции DLL-библиотеки</title>
        <link>https://forum.sources.ru/index.php?showtopic=26341&amp;view=findpost&amp;p=185908</link>
        <description><![CDATA[rcz: Только это немного не в тему.<br>Пример - перехват вызова на осное таблицы импорта. А тема - &quot;Как просмотреть экспорт. функции DLL-библиотеки&quot;<br><br><div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>А где бы мне взять этот пример</div></div><br>-<br><div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>&copy; J.Rihter &quot;WINDOWS &nbsp;<br> Создание эффективных WIN32-приложений с учетом специфики 64-разрядной версии Windows </div></div><br>http://www.proglib.ru/detail_book.asp?id=190<br>]]></description>
        <author>rcz</author>
        <category>Visual C++ / MFC / WTL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=26341&amp;view=findpost&amp;p=185907</guid>
        <pubDate>Wed, 15 Oct 2003 09:17:08 +0000</pubDate>
        <title>Как просмотреть экспорт. функции DLL-библиотеки</title>
        <link>https://forum.sources.ru/index.php?showtopic=26341&amp;view=findpost&amp;p=185907</link>
        <description><![CDATA[nike_zp: <div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <span class='tag-quote__quote-info'>IgnSerg, 10.10.03, 21:42:56</span><div class='quote '>но это для одного exe файла. Если надо перехватывать ф-ю во все загружаемых библиотеках, то есть другой пример функции</div></div><br><br>А где бы мне взять этот пример :-)<br>]]></description>
        <author>nike_zp</author>
        <category>Visual C++ / MFC / WTL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=26341&amp;view=findpost&amp;p=185906</guid>
        <pubDate>Fri, 10 Oct 2003 17:42:56 +0000</pubDate>
        <title>Как просмотреть экспорт. функции DLL-библиотеки</title>
        <link>https://forum.sources.ru/index.php?showtopic=26341&amp;view=findpost&amp;p=185906</link>
        <description><![CDATA[IgnSerg: но это для одного exe файла. Если надо перехватывать ф-ю во все загружаемых библиотеках, то есть другой пример функции]]></description>
        <author>IgnSerg</author>
        <category>Visual C++ / MFC / WTL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=26341&amp;view=findpost&amp;p=185905</guid>
        <pubDate>Fri, 10 Oct 2003 15:54:17 +0000</pubDate>
        <title>Как просмотреть экспорт. функции DLL-библиотеки</title>
        <link>https://forum.sources.ru/index.php?showtopic=26341&amp;view=findpost&amp;p=185905</link>
        <description><![CDATA[IgnSerg: by J.Rihter:<br>правда сосканиная с книжки, так могут быть ошибки<br><br>void ReplaceIATEntryInOneMod(PCSTR pszCalleeModName, PROC pfnCurrent, PROC pfnNew, HMODULE hmodCaller)<br>{ <br><br>ULONG ulSize;<br><br>PIMAGE_IMPORT_DESCRIPTOR pImportDesc = (PIMAGE_IMPORT_DESCRIPTOR) ImageDirectoryEntryToData(hmodCallor, TRUE,IMAGE_DIRECTORY_ENTRY_IMPORT, &amp;ulSize); <br><br>if (pImportDesc == NULL) <br><br>return,; // в этом модуле нет раздела импорта <br><br><br>// находим дескриптор раздела импорм со ссылками <br>// на функции DLL (вызываемого модуля) <br>for (; pImportDesc-&gt;Name; pImportDesc++) <br>{ <br><br>PSTR pszModName = (PSiR) ((PBYFE) hmodCaller + pImportDcsc-&gt;Name); <br><br>if (lstrcmpiA(pszModName, pszCalleeModName) == 0) <br><br>break; <br><br>} <br><br><br>if (pImportDesc-&gt;Name == 0) <br><br>// этот модуль не импортирует никаких функций из данной DLL return;<br><br>// получаем таблицу адресов импорта (IAT) для функций DLL PIMAGE_THUNK_DATA pThunk = (PIMAGE_THUNK_DATA) ((PBYTE} hirodCaller + pImportDesc-&gt;FirstThunk); <br><br>// заменяем адреса исходных функций адресами своих функций <br>for (; pThunk-&gt;u1.Function; pThunk++) <br>{<br><br>// получаем адрес адреса функции <br>PROC* ppfn = (PROC*) &amp;pThunk-&gt;u1.Function;<br><br>// та ли это функция, которая нас итересует?<br>BOOL fFound = (*ppfn == pfnCurrent);<br><br>// см. текст программы-примера, в котором <br>// содержится трюковый код для Windows 98 <br><br><br>if (fFound) <br>{ <br><br>// адреса сходятся, изменяем адрес в разделе импорта <br>WriteProcessMemory(GetCurrentProcess(), ppfn, &amp;pfnNew, sizeof(pfnNew), NULL ); <br><br>return; // получилось, выходим <br><br>} <br><br>} <br><br>// если мы попали сюда, значит, в разделе импорта <br>// нет ссылки на нужную функцию <br><br>}<br><br><br>использование:<br><br>PROC pfnOrig = GctProcAddress(GetModuleHandle(&quot;Kernel32&quot;), &quot;ExitProcess&quot;); <br>HMODULE hmodCaller = GetModuleHandle(&quot;DataBase.exe&quot;); <br><br><br>void RoplaceIATEntryInOrioMod( <br>&quot;Kernel32.dll&quot;, // модуль, содержащий ANSI-функцию <br>pfnOrig, // адрес исходной функции в вызываемой DLL <br>MyExitProcess, // адрес заменяющей функции <br>hmodCaller); // описатель модули, из которого надо вызывать новую функцию <br><br><br><br>(c) J.Rihter &quot;WINDOWS <br><br>Создание эффективных WIN32-приложений с учетом специфики 64-разрядной версии Windows<br>&quot;<br><br>]]></description>
        <author>IgnSerg</author>
        <category>Visual C++ / MFC / WTL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=26341&amp;view=findpost&amp;p=185904</guid>
        <pubDate>Fri, 10 Oct 2003 11:18:45 +0000</pubDate>
        <title>Как просмотреть экспорт. функции DLL-библиотеки</title>
        <link>https://forum.sources.ru/index.php?showtopic=26341&amp;view=findpost&amp;p=185904</link>
        <description><![CDATA[AlexSm: <a class='tag-url' href='http://www.simtel.net/product.download.php?id=28111&url=ftp\%3A\%2F\%2Fftp.chg.ru\%2Fpub\%2Fsimtelnet\%2Fwin95\%2Fprog\%2Fpedump.zip&mirrorsite=Russia&x=0' target='_blank'>Скачай эту файлу</a>, покопайся в pedump.c и много чего подчерпнёшь для себя.]]></description>
        <author>AlexSm</author>
        <category>Visual C++ / MFC / WTL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=26341&amp;view=findpost&amp;p=185903</guid>
        <pubDate>Fri, 10 Oct 2003 10:27:01 +0000</pubDate>
        <title>Как просмотреть экспорт. функции DLL-библиотеки</title>
        <link>https://forum.sources.ru/index.php?showtopic=26341&amp;view=findpost&amp;p=185903</link>
        <description><![CDATA[nike_zp: А реально ли это сделать программно ?]]></description>
        <author>nike_zp</author>
        <category>Visual C++ / MFC / WTL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=26341&amp;view=findpost&amp;p=185902</guid>
        <pubDate>Fri, 10 Oct 2003 10:05:47 +0000</pubDate>
        <title>Как просмотреть экспорт. функции DLL-библиотеки</title>
        <link>https://forum.sources.ru/index.php?showtopic=26341&amp;view=findpost&amp;p=185902</link>
        <description><![CDATA[trainer: Для MSVC вроде так:<br>dumpbin /exports /out:имя_выходного_файла имя_dll]]></description>
        <author>trainer</author>
        <category>Visual C++ / MFC / WTL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=26341&amp;view=findpost&amp;p=185901</guid>
        <pubDate>Fri, 10 Oct 2003 09:50:30 +0000</pubDate>
        <title>Как просмотреть экспорт. функции DLL-библиотеки</title>
        <link>https://forum.sources.ru/index.php?showtopic=26341&amp;view=findpost&amp;p=185901</link>
        <description><![CDATA[nike_zp: Как просмотреть экспортируемые функции DLL-библиотеки]]></description>
        <author>nike_zp</author>
        <category>Visual C++ / MFC / WTL</category>
      </item>
	
      </channel>
      </rss>
	