
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
15.11.2004, 10:58
|
|||
|---|---|---|---|
|
|||
Про extern "C" в Visual C++ 2003 |
|||
|
#18+
Кто знает почему Visual C++ вопреки директиве extern "C", генерирует другое имя для функции? Использую Visual C++ 2003 и из DLL экспортирую функцию так: Код: plaintext 1. Просматриваю скомпилированную DLL утилитой TDUMP, а там в списке экспортируемых функций числится GetUserFromAdir с другим именем (_GetUserFromAdir@4) Как это побороть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.11.2004, 13:04
|
|||
|---|---|---|---|
Про extern "C" в Visual C++ 2003 |
|||
|
#18+
Почему , все вродебы правильно . енто что то вроде станжарта такого . ш (';') (V),(V),, Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.11.2004, 13:19
|
|||
|---|---|---|---|
Про extern "C" в Visual C++ 2003 |
|||
|
#18+
Gasanov2003Использую Visual C++ 2003 и из DLL экспортирую функцию так: Код: plaintext 1. По моим смутным воспоминаниям, есть вариант Код: plaintext 1. 2. Правда, это было давно и на ваткоме. Так что если визуал си не работает - ищи работающий софт ;-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.11.2004, 13:32
|
|||
|---|---|---|---|
Про extern "C" в Visual C++ 2003 |
|||
|
#18+
енто же вообще что то связанное со стандартами OMF и COFF ш (';') (V),(V),, Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.11.2004, 13:41
|
|||
|---|---|---|---|
Про extern "C" в Visual C++ 2003 |
|||
|
#18+
softwarerПо моим смутным воспоминаниям, есть вариант Код: plaintext 1. 2. Правда, это было давно и на ваткоме. Так что если визуал си не работает - ищи работающий софт ;-) Вот этот вариант у меня именно на Visual C++ 2003 превосходно работает TDUMP показывает fn_print Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.11.2004, 16:31
|
|||
|---|---|---|---|
|
|||
Про extern "C" в Visual C++ 2003 |
|||
|
#18+
ZrenBy softwarerПо моим смутным воспоминаниям, есть вариант Код: plaintext 1. 2. Правда, это было давно и на ваткоме. Так что если визуал си не работает - ищи работающий софт ;-) Вот этот вариант у меня именно на Visual C++ 2003 превосходно работает TDUMP показывает fn_print Код: plaintext 1. 2. Пробовал Код: plaintext 1. 2. 3. не помогает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.11.2004, 18:36
|
|||
|---|---|---|---|
Про extern "C" в Visual C++ 2003 |
|||
|
#18+
Gasanov2003не помогает Опа. Поставил у себя для эксперимента __stdcall , и привет - функция декорировалась. Интересно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.11.2004, 19:11
|
|||
|---|---|---|---|
|
|||
Про extern "C" в Visual C++ 2003 |
|||
|
#18+
ZrenBy Опа. Поставил у себя для эксперимента __stdcall , и привет - функция декорировалась. Интересно. И у меня сработало правильно (имя не изменилось) без __stdcall . Без __stdcall она же не будет вызываться нормально из других языков? В частности, из Delphi я попробовал. Access violation выкидывает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.11.2004, 20:24
|
|||
|---|---|---|---|
Про extern "C" в Visual C++ 2003 |
|||
|
#18+
Gasanov2003 Без __stdcall она же не будет вызываться нормально из других языков? В частности, из Delphi я попробовал. Access violation выкидывает. Про другие языки не знаю, ну а в D это делается просто Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
16.11.2004, 06:39
|
|||
|---|---|---|---|
Про extern "C" в Visual C++ 2003 |
|||
|
#18+
Gasanov2003 ZrenBy Опа. Поставил у себя для эксперимента __stdcall , и привет - функция декорировалась. Интересно. И у меня сработало правильно (имя не изменилось) без __stdcall . Без __stdcall она же не будет вызываться нормально из других языков? В частности, из Delphi я попробовал. Access violation выкидывает. Дык, может без extern "C" тогда сделать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
16.11.2004, 08:47
|
|||
|---|---|---|---|
|
|||
Про extern "C" в Visual C++ 2003 |
|||
|
#18+
Без - это через def-файл ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
16.11.2004, 10:25
|
|||
|---|---|---|---|
Про extern "C" в Visual C++ 2003 |
|||
|
#18+
__stdcall убири. Дакуминтацию читай. __stdcall дабавляет вканец @<каличиства байт в стеке при вызаве функции> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
16.11.2004, 10:43
|
|||
|---|---|---|---|
Про extern "C" в Visual C++ 2003 |
|||
|
#18+
__stdcall - спецификация вызова функции, когда после ее завершения она сама чистит стек за собой __cdecl - спецификация вызова функции, когда после ее завершения сама программа чистит стек, который был занят данной функцией. (или наоборот?) А вот насчет extern "C" - где-то в MSDN-е было сказано про, так называемые, Decorated Names . Так вот там, кажется, было оговорено, что к функциям присобачивается знак подчеркивания ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=57&mobile=1&tid=2034089]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
73ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 228ms |
| total: | 381ms |

| 0 / 0 |
