Mahdi_Delphi
شنبه 06 آبان 1385, 20:50 عصر
سلام
برای فراخوانی استاتیک توابع از یک فایل DLL پنــج نوع روش فراخوانی وجود داره که عبارتند از:
Register
Pascal
StdCall
SafeCall
CDecl
اگر هم نوع فراخوانی رو مشخص نکنیم به طور پیش فرض Register در نظر گرفته میشه.
در Register و Pascal تبادل اطلاعات از چپ به راست میباشد ولی در بقیه از راست به چپ.
در فراخوانی Register از ثبات ها (Register ها) ی CPU برای انتقال اطلاعات استفاده میشه ولی در بقیه از پشته برای این کار استفاده میشه.
مشکل من اینه که یک تابع برای محاسبه توان توی یک DLL گزاشتم ولی فقط با فراخوانی نوع Register جواب میده و با استفاده از بقیه روش ها یا خطا رخ میده یا جواب درست نمایش داده نمیشه.
به نظر شما مشکل از کجاست؟
ممنون
برای فراخوانی استاتیک توابع از یک فایل DLL پنــج نوع روش فراخوانی وجود داره که عبارتند از:
Register
Pascal
StdCall
SafeCall
CDecl
اگر هم نوع فراخوانی رو مشخص نکنیم به طور پیش فرض Register در نظر گرفته میشه.
در Register و Pascal تبادل اطلاعات از چپ به راست میباشد ولی در بقیه از راست به چپ.
در فراخوانی Register از ثبات ها (Register ها) ی CPU برای انتقال اطلاعات استفاده میشه ولی در بقیه از پشته برای این کار استفاده میشه.
مشکل من اینه که یک تابع برای محاسبه توان توی یک DLL گزاشتم ولی فقط با فراخوانی نوع Register جواب میده و با استفاده از بقیه روش ها یا خطا رخ میده یا جواب درست نمایش داده نمیشه.
به نظر شما مشکل از کجاست؟
ممنون