новый и удалить контейнер Dlls - PullRequest
0 голосов
/ 18 июня 2010

Я хочу подключить новые и удалить операторы.Но я не могу найти оригинальные библиотеки DLL, где находятся эти операторы.Я использовал msvcr90.dll, msvsr90d.dll, msvcrt.dll, kernal32.dll, ole32.dll и еще несколько DLL-файлов.Но мое шпионское приложение не может найти новые и удалить операторы.

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

Ответы [ 2 ]

1 голос
/ 18 июня 2010

Они находятся в msvcr90.dll.Не забывайте, что это операторы C ++, алгоритм искажения имени делает с ними большую работу.Скопировано из дампа / экспорта:

 15    F 00063E99 ??2@YAPAXI@Z         // void * __cdecl operator new(unsigned int)
 ...
 17   11 00063F03 ??3@YAXPAX@Z         // void __cdecl operator delete(void *)

Я использовал утилиту undname.exe для преобразования искаженного имени обратно.Также имеется несколько перегрузок.

0 голосов
/ 18 июня 2010

Как вы сами сказали, new и delete - это операторы, а не функции. Как таковые и как функции, предназначенные только для C ++, они, вероятно, будут определены либо в стандартной библиотеке C ++ (libstdc ++), либо в используемом вами компиляторе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...