![]() |
|
استخدام مكتبة dll مبرمجة بدلفي 7 ودلفي XE - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15) +--- الموضوع : استخدام مكتبة dll مبرمجة بدلفي 7 ودلفي XE (/showthread.php?tid=5956) |
استخدام مكتبة dll مبرمجة بدلفي 7 ودلفي XE - dztr - 18-02-2014 السلام عليكم ورحمة الله وبركاته عندي DLL وهذا الاجراء procedure SendData(Data: PChar; Count: Integer); stdcall; مصدر منها المتغير الاول حولته من string الى PChar لتجنب اي مشاكل ترجمت المكتبة باستعمال دلفي7 ربطت المكتبة دينامكيا باستعمال دلفي7 الاجراء يعمل بشكل طبيعي المشكل عند ربط المكتبة بدلفي XE الاجراء لا يعمل حاولت تحويل المتغير من PChar الى PAnsiChar لكن دون جدوى اود توضيح وحل المشكل علما ان المكتبة مترجمة بدلفي7 وربط سيكون بدلفي XE والاجراء في المكتبة بهذا الشكل procedure SendData(Data: PChar; Count: Integer); stdcall; استخدام مكتبة dll مبرمجة بدلفي 7 ودلفي XE - Najy Ibraheem - 18-02-2014 السلام عليكم... في دلفي 7 النوع PChar هو Pointer to Char. و لكن أعتقد أنه من دلفي 2010 فما فوق فإن PChar هو Pointer to WideChar. لهذا، و لغرض استعماله مع Delphi XE اجعل نوع البارامتر Data من النوع PWideChar و أعد تصريف الـ DLL. و السلام. استخدام مكتبة dll مبرمجة بدلفي 7 ودلفي XE - dztr - 19-02-2014 لم تنجح PWideChar و PAnsiChar هل من توضيح استخدام مكتبة dll مبرمجة بدلفي 7 ودلفي XE - SMP3 - 19-02-2014 ضع الكود الذي تستخدمه من ال xe . استخدام مكتبة dll مبرمجة بدلفي 7 ودلفي XE - dztr - 19-02-2014 السلام عليكم لقد وجدت حلا كما ذكرت سابقا الاجراء في المكتبة بهذا الشكل procedure SendData(Data: PChar; Count: Integer); stdcall; تم تعريفه في دلفي XE بهذا الشكل procedure SendData(Data: PَAnsiChar; Count: Integer); stdcall; عند التمرير استعملت SendData(PَAnsiChar(AnsiString(Data)), Count); stdcall; والحمد لله توصلت للحل SMP3 كتب :ضع الكود الذي تستخدمه من ال xe .لقد وضعت كل شيء ![]() ممكن توصيح ولو بسيط لما حدث وهل توجد حلول اخرى |