View Full Version : Invalid Pointer Operation
asilverisis
یک شنبه 12 تیر 1384, 14:09 عصر
سلام
من توی دلفی یه DLL ساختم که فقط یه پروسیجر رو رو Export می کنه
البته دو پروسیجر دیگه هم در داخل آن هستند
وقتی توی برنامه ازش استفاده می کنم کارش ر و دقیقا انجام می ده
ولی بعد از دادن نتیجه Error زیر رو می ده
Invalid Pointer Operation
قابل توجه که پارامترهای پروسیجر String هسنتد
گفتم شاید اشکال از اون باشه
maryam.ili
یک شنبه 12 تیر 1384, 17:05 عصر
احتملا باید نوع داده استرینگ را عوض کنی و از نوع رشته های دیگر دلفی استفاده کنی
vcldeveloper
دوشنبه 13 تیر 1384, 05:40 صبح
قابل توجه که پارامترهای پروسیجر String هسنتد
اگه از string در DLL استفاده می کنید، یونیت ShareMem باید اولین یونیت در بخش USES هر دو پروژه (هم DLL و هم برنامه ایی که ازش استفاده می کنه) باشه، همچین فایل BORLNDMM.DLL رو هم باید با برنامه تون در سیستم مقصد کپی کنید
بجای String می تونید از ShortString یا PChar استفاده کنید تا نیازی به استفاده از ShareMem نباشه.
asilverisis
دوشنبه 13 تیر 1384, 07:34 صبح
سلام آقای کشاورز
دست شما درد نکنه این کار رو کردم البته قبلا به Uses DLL اضافه کرده بودم ولی به برنامه نه
این Error رفع شد ولی حالا بعد از انجام کار وقتی فرم رو می بندم RunTime Error می ده :
RunTime Error 217 at 0041375c
محمد میرمصطفی
دوشنبه 13 تیر 1384, 17:57 عصر
مطمئنی که Objevtی، متغیری چیزی Create نمی کنی که بعدش Freeش نکرده باشی؟
asilverisis
دوشنبه 13 تیر 1384, 19:22 عصر
سلام
آره مطمئنم خیلی ساده است
یه پروسیجر External تعربف می کنم
بعد صداش می زنم
ضمنا این Runtime Error که می ده حتی اگر کار DLL هم انجام نشه یعنی فقط فرم رو باز کنم و ببندم هم اتفاق می افته
ضمنا تمام String ها رو هم ShortString کردم درست نشد
asilverisis
دوشنبه 13 تیر 1384, 19:28 عصر
سلام
آقا ببخشید درست شد
بعد از اینکه String ها رو تبدیل کردم به ShortString
ShareMem رو از لیست Uses حذف نکرده بودم
این کار رو کردم درست شد
از همتون ممنون
:sunglass:
babila
یک شنبه 19 تیر 1384, 20:43 عصر
من هم به چنین مشکلی برخورد کرده بودم ولی جالب اینجاست که هیچ کدوم از این کارها رو نکردم بلکه قبل از ارسال مقدار بازگشتی تابع آنرا در یک متغیر عمومی (تعریف شده در قسمت VAR اول )ریختم و بعد آن متغیر را در Result قرار دادم که مشکلم حل شد.
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.