الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

Probelm in Installshield

مغلق
بدأه aboelaraby في 7 مارس 2007 · 4 رد · 559 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

أريد ان call function in .net dll fileعن طريق custom action in Installshield

ولكن عند تشغيل الsetup تظهر رسالة

can not find entry point for function 'FunctionName ',make sure it is exported

ما معنى هذا الخطأ و كيف أحدد entry point for function

وشكرا مقدما

#2

السلام عليكم

ذلك الخطأ يعني إحدى الإحتمالات التالية:

1. الدالة التي تستدعيها من الدي آل آل غير موجودة أو لم تضف لهاexport مثال

extern "C" __declspec(dllexport) void _stdcall CreateNativeObj()
{return pWiFiMan->CreateNativeObj();}

2. أنك تستدعي الدالة بشكل خاطئ أي هناك خطأ في إسم الدالة أو نوع أو عدد المتغيرات التي تحتاجها أو التي ترجعها.

غالبا هذه هي الأسباب الرئيسية

والله أعلم

#3

أخى العزيز شكرا على سرعة الرد

لاأعتقد انى أستدعى الدالة بشكل خاطئ

ولكنى بالفعل لم أضف لها export

وأريد أن أعرف كيف أضيف لها export عن طريق ال c#

و شكرا

#4

السلام عليكم

أخي زيادة ال export لا تكون في سي شارب بل في الكود سي وتكون بالكيفية المماثلة للمثال الذي قدمته لك في المثال السابق أما في سي شارب فقم فقط بإستدعاء الدوال التي عرفتها في المكتبة مثال

 [DllImport("MyDll.dll", EntryPoint = "MethodA", SetLastError = true)]
	public static extern IntPtr MethodA();

 [DllImport("MyDll.dll", EntryPoint = "MethodB", SetLastError = true)]
   public static extern bool MethodB();

وهذا مثال على كيفية تعريف الدوال MethodA و MethodB في المكتبة MyDll.dll

extern "C" __declspec(dllexport) BSTR _stdcall MethodA()
{
	CString Resp = "Hello Arabteam2000"; 
	return Resp.AllocSysString();
 }	   

extern "C" __declspec(dllexport) BOOL _stdcall MethodB()
{return true;}

آمل أن يكون ردي واضحا

والله أعلم

#5

السلام عليكمو رحمة الله

مشكلتى أنى لا أستخدم php or cولكن فقط c#

و عندى dllبها 1 classبها 1 method

و من installshield أنشئ custom action ,و أخبره بمكان الdll

ولكن تظهر رسالة الخطا الموجودة فى رسالتى الأولى

و جزاك الله خيرا على كل حال

هذا الموضوع مغلق.

مواضيع مشابهة