Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.09.2011, 12:09   #1
RuVarez
Форумчанин
 
Аватар для RuVarez
 
Регистрация: 25.08.2010
Сообщений: 258
По умолчанию DLL на Delphi импорт в C++

Здраствуйте! У меня вопрос:
Есть DLL созданная на delphi вот код:
Цитата:
library Project2;

{ Important note about DLL memory management: ShareMem must be the
first unit in your library's USES clause AND your project's (select
Project-View Source) USES clause if your DLL exports any procedures or
functions that pass strings as parameters or function results. This
applies to all strings passed to and from your DLL--even those that
are nested in records and classes. ShareMem is the interface unit to
the BORLNDMM.DLL shared memory manager, which must be deployed along
with your DLL. To avoid using BORLNDMM.DLL, pass string information
using PChar or ShortString parameters. }

uses
SysUtils,
Classes,Windows;

{$R *.res}
function Mess_() : Integer; stdcall;
begin
MessageBox(0,'test','capt',0);
Result := 0;
end;

exports Mess_;
begin
end.
И загрузка в C++ Builder:
Цитата:
HMODULE Lib;
int (__stdcall *Mess_)(void);
Цитата:
Lib = LoadLibraryA(DelphiDLL);
Mess_ = (int(*)())GetProcAddress(Lib,"Mess_ ");
Mess_();
FreeLibrary(Lib);
Выдает Access violation adress 00000 Как будто вообще память не выделяет под нее!
RuVarez вне форума Ответить с цитированием
Старый 22.09.2011, 12:14   #2
RuVarez
Форумчанин
 
Аватар для RuVarez
 
Регистрация: 25.08.2010
Сообщений: 258
По умолчанию

Ой последний кусок такой вот
Цитата:
Lib = LoadLibraryA(DelphiDLL);
Mess_ = (int(__stdcall *)())GetProcAddress(Lib,"Mess_ ");
Mess_();
FreeLibrary(Lib);
Го все равно тоже самое
RuVarez вне форума Ответить с цитированием
Старый 23.09.2011, 16:57   #3
JUDAS
фонатик DELPHI
Форумчанин
 
Аватар для JUDAS
 
Регистрация: 14.01.2008
Сообщений: 714
По умолчанию

"Mess_ " или "Mess_" пробел в конце нужен ?
95% сбоев и ошибок приложений, находится в полу метрах от монитора
JUDAS вне форума Ответить с цитированием
Старый 26.09.2011, 10:51   #4
RuVarez
Форумчанин
 
Аватар для RuVarez
 
Регистрация: 25.08.2010
Сообщений: 258
По умолчанию

Нет без пробелов!
RuVarez вне форума Ответить с цитированием
Старый 26.09.2011, 12:10   #5
RuVarez
Форумчанин
 
Аватар для RuVarez
 
Регистрация: 25.08.2010
Сообщений: 258
По умолчанию

Уважаемые модераторы! Подскажите ктото чтото
RuVarez вне форума Ответить с цитированием
Старый 26.09.2011, 12:46   #6
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

прогугли "Вызов Delphi DLL из MS Visual C++"
Человек_Борща вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Импорт DLL из RAR архива _-Re@l-_ Общие вопросы Delphi 14 19.09.2010 18:59
Импорт из С dll на Дельфи apromix Помощь студентам 19 17.11.2009 21:07
С++: правильный импорт dll apromix Помощь студентам 1 04.10.2009 02:28
Импорт DLL в прогу cowboy Общие вопросы Delphi 5 14.04.2009 13:37
Импорт VB6 DLL в C++ DmF Общие вопросы C/C++ 1 06.03.2008 08:48