Отладка приложений

         

К счастью, вычислить это число


К счастью, вычислить это число довольно просто: оно равно сумме байт, отводимых в стеке для всех параметров. Для семейства CPU Intel Pentium нужно просто сосчитать число параметров и умножить его на 4. Для функции LoadLibrary, которая имеет один параметр, окончательное декорированное имя выгладит так: _LoadLibraryA@4. Вот еще два примера, которые показывают, как должны выглядеть окончательные декорированные имена функций:

  •  _createProcessA040 — для функции CreateProcess, которая имеет 10 параметров;
  •   _TlsAiioc@o — для функции TisAiioc, которая не имеет параметров.
Даже если функция не имеет параметров, нужно придерживаться формата "@#" (как мы только что видели, декорированное имя функции TISAIIOC имеет вид maiito:_TlsAiioc@o). Когда символы не загружаются, ANSI- и Unicode-условия все еще применимы. Если символы загружены, синтаксис прерывания на LoadLibrary выглядит или так: {, ,KERNEL32.DLL}_LoadLibraryA@4, или так: {,, KERNEL32. DLL}_LoadLibraryW@4.



Содержание  Назад  Вперед







Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий