ورود

View Full Version : سوال: مشکل در استفاده از نسخه ۶۴ بیتی fftw



Moharram
جمعه 26 خرداد 1402, 12:10 عصر
سلام
تو یه برنامه توابع fftw رو با توابع LoadLibrary و GetProcAddr استخراج کرده و استفاده می کنم.
توابع مشکلی ندارن به جز fftw_execute که با مشکل Access Violation روبرو میشه تو آدرس 0x00000000!
نسخه ۳۲ بیتی همین برنامه مشکلی نداره و مشکل فقط تو نسخه ۶۴ بیتی به وجود میاد.
DLL مورد استفاده هم ۶۴ بیتی هست چون در غیر اینصورت موقع Load کردن پیغام خطا می داد.

جالب اینه که وقتی همین DLL رو تو دلفی بصورت استاتیک بدون LoadLibrary استفاده می کنم مشکلی نیست!

به نظرتون مشکل چیه؟

ممنون
به نظرتون

Moharram
شنبه 27 خرداد 1402, 22:33 عصر
مشکل به اون حادی که فکر می کردم نبود

در واقع مشکل از تابع fftw_execute نبود، بلکه تابع قبل از اون یعنی fftw_plan_dft_1d با پارامتر نامناسب مقداردهی شده بود. پارامتر آخر برای اجرای ۳۲ بیتی باید 1- باشه و برای اجرای ۶۴ بیتی ۶۴!