Unit1.cpp
#include <vcl.h>
#pragma hdrstop
#pragma argsused
int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved) {
return 1;
}
#include "Unit1.h"
void __stdcall test() {
ShowMessage("Привет, мир!");
}
Unit1.h
#ifndef _Unit1_h
#define _Unit1_h
#ifdef __DLL__
#define DLL_EI __declspec(dllexport)
#else
#define DLL_EI __declspec(dllimport)
#endif
extern "C" void DLL_EI __stdcall test();
#endif
Различие DLL С++ Builder и Delphi
Предыстория вопроса.
Необходимо собрать DLL, функции которой будут экспортироваться в программу на языке Avenue платформы ArcView.
Проблема в том, что сборка DLL в Delphi 7.0 подключается в Avenue, а сборка в C++ Builder 6.0 - нет.
Тестовые примеры.
[color=green]DLL C++ Builder 6.0[/color]
[color=red]DLL Delphi 7.0[/color]
Теперь получаемая структура экспорта DLL.
[color=red]DLL Delphi 7.0[/color]
Подскажите, в чем разница? Если все-таки различие есть, как на C++ Builder 6.0 осуществить аналогичную сборку?
*
Необходимо собрать DLL, функции которой будут экспортироваться в программу на языке Avenue платформы ArcView.
Проблема в том, что сборка DLL в Delphi 7.0 подключается в Avenue, а сборка в C++ Builder 6.0 - нет.
Тестовые примеры.
[color=green]DLL C++ Builder 6.0[/color]
Код:
[color=red]DLL Delphi 7.0[/color]
Код:
Project1.dpr
library Project1;
uses
SysUtils,
Classes,
Dialogs;
{$R *.res}
procedure test(); stdcall;
begin
ShowMessage('Привет, мир!');
end;
exports
test;
begin
end.
library Project1;
uses
SysUtils,
Classes,
Dialogs;
{$R *.res}
procedure test(); stdcall;
begin
ShowMessage('Привет, мир!');
end;
exports
test;
begin
end.
Теперь получаемая структура экспорта DLL.
Цитата:
impdef project1.def project1.dll
[color=green]DLL C++ Builder 6.0[/color]
Код:
LIBRARY PROJECT1.DLL
EXPORTS
___CPPdebugHook @2 ; ___CPPdebugHook
test @1 ; test
EXPORTS
___CPPdebugHook @2 ; ___CPPdebugHook
test @1 ; test
[color=red]DLL Delphi 7.0[/color]
Код:
LIBRARY PROJECT1.DLL
EXPORTS
test @1 ; test
EXPORTS
test @1 ; test
Подскажите, в чем разница? Если все-таки различие есть, как на C++ Builder 6.0 осуществить аналогичную сборку?