![]() |
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]() ![]() ![]() |
|
Frikazoid |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 424 Регистрация: 29.3.2002 Репутация: 1 Всего: 2 |
Доброго времени суток Господа!
У меня возник вопрос! Как же всё таки подключить DLL'ку написанную на VC в Delphi? Вот фу-я: int __declspec(dllexport) __stdcall ExtPing(int nCommPort, BOOL bIsIrDA = FALSE); Для импорта её же я написал: function ExtPing(nCommPort:integer; bIsIrDA:boolean=FALSE):integer; external 'Cipher.dll' name 'ExtPing'; пробовал и: function ExtPing(nCommPort:integer; bIsIrDA:boolean):integer; external 'Cipher.dll' name 'ExtPing'; При запуске прложения дебугег говорит, что не может найти точку входа в эту вот процедуру! В чём же моя ошибка? Заранее благодарен за любую помощь! ЗЫ Весь материал тут ЗЫ 8000 Series Terminal - mazdai.... -------------------- RTFM - "Всё для программиста" Это уменя есть сайт! Урыл в профайле! А там.... Ну всё что надо по PHP Delphi CSS HTML JavaScript Perl API ASP MySQL XML С++ VBasic и многое другое. |
|||
|
||||
stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: 14 Всего: 48 |
попробуй так:
-------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
stab |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: 14 Всего: 48 |
думаю тебе это поможет:
-------------------- 6, 6, 6 - the number of the beast. |
||||
|
|||||
pascal |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 180 Регистрация: 16.7.2003 Где: Россия - Уфа Репутация: нет Всего: 1 |
Очень уж любопытно, а как это вообще понимать?
то есть по какому принцепу это всё так шифруется? |
|||
|
||||
Frikazoid |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 424 Регистрация: 29.3.2002 Репутация: 1 Всего: 2 |
cully спасибо!
-------------------- RTFM - "Всё для программиста" Это уменя есть сайт! Урыл в профайле! А там.... Ну всё что надо по PHP Delphi CSS HTML JavaScript Perl API ASP MySQL XML С++ VBasic и многое другое. |
|||
|
||||
stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: 14 Всего: 48 |
Это долбаный компилер C\C++ так обзывает каждую функцию исходя из типов параметров, типа результата и, собственно, самого имени функции. -------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
Frikazoid |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 424 Регистрация: 29.3.2002 Репутация: 1 Всего: 2 |
Как вот это вот
Изобразить в дельфях? Спасибо! -------------------- RTFM - "Всё для программиста" Это уменя есть сайт! Урыл в профайле! А там.... Ну всё что надо по PHP Delphi CSS HTML JavaScript Perl API ASP MySQL XML С++ VBasic и многое другое. |
|||
|
||||
oleg1973 |
|
|||
![]() asm fanat ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3283 Регистрация: 16.7.2003 Где: Italy Репутация: 1 Всего: 34 |
нда
![]() asm push указатель на имя dll call loadlbrary push указатель на кактамфункциюзовут push eax call getprocaddress end; сия хрень вернет в еах адрес той самой функ которую просили и пофигу на чем написана dll Это сообщение отредактировал(а) oleg1973 - 6.12.2003, 03:49 -------------------- SST 465555 icq 200-512-712 |
|||
|
||||
Frikazoid |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 424 Регистрация: 29.3.2002 Репутация: 1 Всего: 2 |
да нет!
Мне нужно тот класс экспортнуть! -------------------- RTFM - "Всё для программиста" Это уменя есть сайт! Урыл в профайле! А там.... Ну всё что надо по PHP Delphi CSS HTML JavaScript Perl API ASP MySQL XML С++ VBasic и многое другое. |
|||
|
||||
Frikazoid |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 424 Регистрация: 29.3.2002 Репутация: 1 Всего: 2 |
Ну поможите плз!
-------------------- RTFM - "Всё для программиста" Это уменя есть сайт! Урыл в профайле! А там.... Ну всё что надо по PHP Delphi CSS HTML JavaScript Perl API ASP MySQL XML С++ VBasic и многое другое. |
|||
|
||||
stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: 14 Всего: 48 |
почитай здесь: http://forum.vingrad.ru/index.php?act=ST&f=2&t=13274
-------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
Frikazoid |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 424 Регистрация: 29.3.2002 Репутация: 1 Всего: 2 |
Ну да, помню помню! но тогда я так и не получил нужного мне ответа!
-------------------- RTFM - "Всё для программиста" Это уменя есть сайт! Урыл в профайле! А там.... Ну всё что надо по PHP Delphi CSS HTML JavaScript Perl API ASP MySQL XML С++ VBasic и многое другое. |
|||
|
||||
stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: 14 Всего: 48 |
а в чем проблема? что конкретно не получается?
-------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
Frikazoid |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 424 Регистрация: 29.3.2002 Репутация: 1 Всего: 2 |
Ну переведи мне ПЛЗ в дельфёвый вид этот класс. И всё! ПЛЗ!
-------------------- RTFM - "Всё для программиста" Это уменя есть сайт! Урыл в профайле! А там.... Ну всё что надо по PHP Delphi CSS HTML JavaScript Perl API ASP MySQL XML С++ VBasic и многое другое. |
|||
|
||||
Dmitry V.Abramov |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 30.9.2003 Где: Saint-Petersburg Репутация: 5 Всего: 4 |
Frikazoid Классы в каждом языке устроены по-разному. В Delphi и BCB постарались сделать их максимально схожими. И то, нет-нет да слышен вскрик наступившего на очередные грабли несовместимости. Про бинарный перенос классов из MSVC слышать пока не приходилось. Либо proxy-DLL, либо полухакерская адаптация, если для нее оставлены лазейки (как, например, поступили ребята с классами из GDI+).
Об этом ведь уже писалось. Причем именно по твоему вопросу. Причем подробно и с вариантами решений. --------------------
/DVA |
|||
|
||||
Frikazoid |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 424 Регистрация: 29.3.2002 Репутация: 1 Всего: 2 |
короче засада!
Я уже вот месяц или больше как бьюсь об эту х...ю -------------------- RTFM - "Всё для программиста" Это уменя есть сайт! Урыл в профайле! А там.... Ну всё что надо по PHP Delphi CSS HTML JavaScript Perl API ASP MySQL XML С++ VBasic и многое другое. |
|||
|
||||
stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: 14 Всего: 48 |
Frikazoid, покажи свои наброски ;)
-------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
Frikazoid |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 424 Регистрация: 29.3.2002 Репутация: 1 Всего: 2 |
Да какие там наброски? Там есть функции, специально предназначенные для использования без применение того самого класса. Они все с префиксом ext, но они все возращают -1! Я не понимаю почему! А с классом я не пробовал!
-------------------- RTFM - "Всё для программиста" Это уменя есть сайт! Урыл в профайле! А там.... Ну всё что надо по PHP Delphi CSS HTML JavaScript Perl API ASP MySQL XML С++ VBasic и многое другое. |
|||
|
||||
Frikazoid |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 424 Регистрация: 29.3.2002 Репутация: 1 Всего: 2 |
Здрасти!
Могёте вот это перевести в дельфёвый вид культурно на? Спасибо! int __declspec(dllexport) __stdcall ExtPing(int nCommPort, BOOL bIsIrDA = FALSE); long __declspec(dllexport) __stdcall ExtGetFreeMemory(int nCommPort, BOOL bIsIrDA = FALSE); BOOL __declspec(dllexport) __stdcall ExtGetSerialNumber(LPSTR szData, int nCommPort, BOOL bIsIrDA = FALSE); BOOL __declspec(dllexport) __stdcall ExtGetTime(LPSTR szData, int nCommPort, BOOL bIsIrDA = FALSE); BOOL __declspec(dllexport) __stdcall ExtUpdateTime(int nCommPort, BOOL bIsIrDA = FALSE); int __declspec(dllexport) __stdcall ExtGetCurrentState(LPSTR szData, int nCommPort, BOOL bIsIrDA = FALSE); long __declspec(dllexport) __stdcall ExtGetDataCount(int nDoc, int nCommPort, BOOL bIsIrDA = FALSE); long __declspec(dllexport) __stdcall ExtGetRecordsCount(int nBase, int nCommPort, BOOL bIsIrDA = FALSE); BOOL __declspec(dllexport) __stdcall ExtClearDoc(int nDoc, int nCommPort, BOOL bIsIrDA = FALSE); BOOL __declspec(dllexport) __stdcall ExtClearDatabase(int nBase, int nCommPort, BOOL bIsIrDA = FALSE); int __declspec(dllexport) __stdcall ExtReadData(int nDoc, LPSTR szData, int nCommPort, BOOL bIsIrDA = FALSE); int __declspec(dllexport) __stdcall ExtReadRecord(int nBase, LPSTR szData, int nCommPort, BOOL bIsIrDA = FALSE); BOOL __declspec(dllexport) __stdcall ExtPutRecord(int nBase, LPCSTR szData, int nCommPort, BOOL bIsIrDA = FALSE); BOOL __declspec(dllexport) __stdcall ExtFinish(int nCommPort, BOOL bIsIrDA = FALSE); Санькс... -------------------- RTFM - "Всё для программиста" Это уменя есть сайт! Урыл в профайле! А там.... Ну всё что надо по PHP Delphi CSS HTML JavaScript Perl API ASP MySQL XML С++ VBasic и многое другое. |
|||
|
||||
Frikazoid |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 424 Регистрация: 29.3.2002 Репутация: 1 Всего: 2 |
Ну плиз!
-------------------- RTFM - "Всё для программиста" Это уменя есть сайт! Урыл в профайле! А там.... Ну всё что надо по PHP Delphi CSS HTML JavaScript Perl API ASP MySQL XML С++ VBasic и многое другое. |
|||
|
||||
Unregistered |
|
|||
Unregistered |
... прошло два года...
Ребята всё это фигня чё вы тут написали. Подстава в том что __declspec(dllexport) почему-то не работает. Чтобы получить результат необходимо ручками написать def-файл. |
|||
|
||||
Frikazoid |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 424 Регистрация: 29.3.2002 Репутация: 1 Всего: 2 |
В другой теме ответ!
Теперь всё работает! Вот тока траблы с получением данных из Pchar овых полей! -------------------- RTFM - "Всё для программиста" Это уменя есть сайт! Урыл в профайле! А там.... Ну всё что надо по PHP Delphi CSS HTML JavaScript Perl API ASP MySQL XML С++ VBasic и многое другое. |
|||
|
||||
Unregistered |
|
|||
Unregistered |
Frikazoid
Если не трудно кинь ссылку где ответ нашел. У меня тот же трабл. Уже 2 недели ничего не могу сделать. |
|||
|
||||
<Spawn> |
|
|||
![]() Око кары:) ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2776 Регистрация: 29.1.2003 Где: Екатеринбург Репутация: 44 Всего: 64 |
Unregistered возьми любую прогу, умеющую смотреть PE-заголовок и увидишь реальные имена функций.
-------------------- "Для некоторых людей программирование является такой же внутренней потребностью, подобно тому, как коровы дают молоко, или писатели стремятся писать" - Николай Безруков. |
|||
|
||||
AlexD |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 19.2.2004 Репутация: нет Всего: нет |
<Spawn>
Заголовки я ужо узал два дня назад. У меня так же как и у Frikazoida при использовании функций возникает External Exception. |
|||
|
||||
AlexD |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 19.2.2004 Репутация: нет Всего: нет |
Кстати работаю в CBuilder, но смысл я думаю тотже.
|
|||
|
||||
Frikazoid |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 424 Регистрация: 29.3.2002 Репутация: 1 Всего: 2 |
Дык! То тоже моя тема с этим же вопросом! Просто воспользуйся поиском по моему имени! у меня мало тем!
-------------------- RTFM - "Всё для программиста" Это уменя есть сайт! Урыл в профайле! А там.... Ну всё что надо по PHP Delphi CSS HTML JavaScript Perl API ASP MySQL XML С++ VBasic и многое другое. |
|||
|
||||
AlexD |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 19.2.2004 Репутация: нет Всего: нет |
Frikazoid
А как именно сделал? Я скачал то что man2002ua прислал, там его dll и проект на делфях, так не пашет он у меня нихрена. Порт открывается а пинг не проходит. |
|||
|
||||
AlexD |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 19.2.2004 Репутация: нет Всего: нет |
Frikazoid
Огромная просьба, пришли пожалуйста исходник где хотябы Ping проходит. Порт у меня открывается и закрывается, это единственное что работает. [email protected] |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Общие вопросы" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |