View Full Version : استفاده از lib c++ builder
baradar
چهارشنبه 02 تیر 1389, 11:24 صبح
با سلام
من می خوام با c++ builder یک کتابخانه بنویسم
و از اون توی دلفی استفاده کنم می خواستم ببینم چطوری باید
یک فایل هدر سی رو به دلفی معرفی کنم و اینکه اگر من بخوام
از کتابخانه سی استفاده کنم باید اون رو طور خاصی بنویسم یانه
لطفا کمی توضیح دهید
tdkhakpur
چهارشنبه 02 تیر 1389, 14:06 عصر
به گمانم کتابخانه کامپایل شده با سی داخل دلفی به درستی اجرا نشود ولی در مورد تغییر هدر کار چندان سختی نیست کافیه مشابه سازی کنید مثلا
int GetFreqance(void); // داخل سی
function GetFreqance : integer;
و یا سایر توابع و ....
در ضمن برای چی از dll استفاده نمیکنید؟
baradar
چهارشنبه 02 تیر 1389, 15:15 عصر
پس این دستور برای چه کاری هست
{$I filename} {$INCLUDE filename}
BORHAN TEC
پنج شنبه 03 تیر 1389, 17:57 عصر
پس این دستور برای چه کاری هست
این دستور معادل #include <filename> در c است با این تفاوت که برای یونیت های پاسکال به کار می رود.
BORHAN TEC
پنج شنبه 03 تیر 1389, 18:09 عصر
راستش یک مثال پیدا کردم یعنی یونیت MidasLib.Pas که در VCL وجود دارد و سورس کامل آن در آدرس زیر قرار دارد (در RAD Studio 2010 . در نسخه های قبی Open Source نبوده است.)
C:\Program Files\Embarcadero\RAD Studio\7.0\source\db\midas
کد یونیت هم به شرح زیر است. (به فایلهای با پسوند obj توجه شود)
{************************************************* ******}
{ }
{ Delphi Visual Component Library }
{ }
{ Copyright(c) 1995-2010 Embarcadero Technologies, Inc. }
{ }
{************************************************* ******}
{************************************************* ******}
{ Static Midas Library }
{************************************************* ******}
unit MidasLib;
interface
implementation
uses Dialogs, Windows, Sysutils, ActiveX, DSIntf, crtl;
function DllGetDataSnapClassObject(const CLSID, IID: TGUID; var Obj): HResult; stdcall; external;
{$R midas.res}
{$L midas.obj}
{$L bcd.obj}
{$L cpprtl.obj}
initialization
RegisterMidasLib(@DllGetDataSnapClassObject);
finalization
end.
lord_viper
جمعه 04 تیر 1389, 08:20 صبح
شما باید دستورات رو به صورت object file کامپایل کنین (فایلهایی با پسوند .obj) بعد اونها رو مثل ریسورسها تو برنامه اعلان میکنید و با استفاده از راهنمای Far توابع رو فراخوانی میکنین
در این کتاب تو یکی از بخشهاش توضیح داده شده
http://barnamenevis.org/forum/showthread.php?t=219918
BORHAN TEC
جمعه 11 تیر 1389, 23:19 عصر
در لینک زیر هم یک روش دیگه آموزش داده شده:
http://www.drbob42.com/examines/examin92.htm
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.