PDA

View Full Version : [DllImport] مشکلی که تا بحال هرگز حل نشده . لطفا کمک کنید



jabbary
یک شنبه 01 دی 1387, 15:37 عصر
با سلام خدمت جامعه مهندسین عزیز.

در برنامه ای که نوشته ام ( با ASP.NET ) از یک DLL استفاده می کنم که با متد DllIMport آن را معرفی کردم. زمانی که برنامه توسط خوده ویژال استدیو یا به عبارتی توسط ASP.NET" development server" یا همان فایل سیستم مستقل از IIS, اجرا می شود برنامه بخوبی کار می کنه , اما زمانی که برنامه را روی Localhost قرار می دهم و به صورت VitrualDirectory اجرا می کنم خروجی هایی که از DLL فراخوانی میشوند یا خالی و یا اشتباه و یا بعضا درست و در کل برنامه نادست عمل می کند. من تمامی Premission های IIS را true کردم و تمامی یوزر های تعریف شده در ویندوز را unlimited کردم و هر آنچه اجازه بوده صادر کردم. اما باز هم مشکلم حل نشده .

در گوگل نیز سرچ کردم و دیدم که افراد بسیاری دچاره این مشکل شده اند و هیچ کدام به جوابی نرسدند. سوالمو در فروم های IIS و ASP.NET نیز مطرح کردم اما هنوز به پاسخی نرسیدم.

و هم اکنون دست به دامن شما مهندسین عزیز شدم ....
متن کامل مشکلم که در فروم های دیگه مطرح شده در این آدرس ها هست اگر کسی کمک کنه خیلی ممنون میشم. امیدوارم سرانجام به پاسخ برسم.

http://forums.iis.net/p/1153899/1888100.aspx#1888100 (http://forums.iis.net/p/1153899/1888100.aspx#1888100)
http://forums.asp.net/p/1363198/2821631.aspx#2821631 (http://forums.asp.net/p/1363198/2821631.aspx#2821631)
http://bytes.com/topic/asp-net/answers/858830-dll-does-not-work-webserver (http://bytes.com/topic/asp-net/answers/858830-dll-does-not-work-webserver)

Saber_Fatholahi
یک شنبه 01 دی 1387, 18:39 عصر
دوست من می خوای از DLL استفاده کنی چرا از AddRefrences استفاده نمی کنی فکر نمی کنم با این کار واست مشکلی پیش بیاد من از این روش شما برای معرفی توبع API استفاده می کردم قاعدتا نباید روش شما هم مشکلی داشته باشه اما این روش که گفتم تست کن ضرر نداره موفق باشی

mahdi_farhani
یک شنبه 01 دی 1387, 20:18 عصر
FileSystem و IIS در یکسری از توابع با هم تفاوت دارند .
مثلاً یک نمونه Messagebox هست که در زنانی که فایل سیستم بازکنید بتون جواب میده ولی در IIS جواب نمیده /باید به ساختار DLL توحجه داشته باشید که از چه دستوراتی استفاده کرده

jabbary
جمعه 06 دی 1387, 13:26 عصر
دوست عزیز , اگر من می تونستم از AddRefrence استفاده کنم چرا دیگه این همه لقمه رو پیچوندم دوره سرم.

فایل DLL ای که من استفاده می کنم قابل use کردن نیست , و طبق فایل هدر آن باید توابع آن را تک تک معرفی کرد. همانند بعضی از API های ویندروزی مثل Kernel32.dll .
در جواب هر 2 دوست عزیزی که لطف کردن و پاسخ دادن, باید عرض کنم که اگر اون 2 لینک که گذاشتم کامل ببینید متوجه ی مشکل من خواهید شد. :ناراحت:

mahdi_farhani
جمعه 06 دی 1387, 20:02 عصر
لینکها را من خوندم ، ولی شما باید به این دقت کنید که آیا این DLL اصلا روی IIS ( یا بهتر بگم وب سرور ) بهتون جواب میده یا نه