ولی آیا جایی در خود کامپایلر دلفی 2005 هست که ما پیش فرض این متغیر را روی حالت Forms قرار دهیم
بله، هست. در فولدر
C:\Program Files\Borland\BDS\3.0\Objrepos\DelphiDotNet\
در فایل Web.Config در خط 44 کلمه Windows را به Forms تغییر دهید. از این ببعد تغییری که در این فایل Web.Config داده اید در تمام پروژه های جدید اعمال میشود.
ظاهرا مشکل Authentication نیست
من وقتی مسیر رو از داخل www root جدا کردم و یک دایرکتوری مجازی ساختم مشکلی نداشتم ولی باز وقتی رو سرور منتقل میشه(منظورم host است) اون پیغام عجیب دیده میشه
میتونم حدس بزنم مشکلت چیه :wise1:
چون خودم وقتی اولین Application نوشته شده با دلفی دات نت ام رو به سایتم آپلود کردم این مشکلات عجیب رو دیدم.
و اما مشکل چیه و راه حل چیه؟
مشکل و منبع آن:
مشکل از اینجا ناشی میشود که بورلند در Delphi.Net ابداعاتی کرده که در Microsoft .Net Framework استاندارد نیست، مثلا افزودن Borland Data Providers (یا همان BDP) و استفاده پیش فرض از آنها بجای معادلهای مایکروسافتی مانند SQLDataAdapter و ... .
این افزونه ها قطعا در اسمبلی هایی قرار دارند که بعلت شخص ثالث محسوب شدن بورلند در توسعه تکنولوژیMicrosoft .Net Framework نسبت به مایکروسافت، بصورت پیش فرض توسط نصاب دات نت نصب نمیشوند و بنابراین در سرور مقصد وجود ندارند، اما هنگام نصب دلفی 2005 در سیستم و سرور محلی شما نصب میشوند.
بهمین دلیل است که Web Application های شما در سرور محلی که دلفی 2005 بر روی آن نصب شده درست کار میکند، اما بر روی وب سرور شما درست کار نمیکند، بعبارت بهتر: عدم وجود اسمبلی های بورلند در سرور مقصد.
راه حل:
در فایل Web.Config پروژه تان در حدود خط 36 چنین تنظیمی دارید:
<customErrors
mode="RemoteOnly"
/>
آنرا بصورت زیر تغییر دهید:
<customErrors
mode="Off"
/>
اینجاست که اشکالات پنهان چهره نمایان میکنند. و اشکالاتی که خواهید دید از این یک شرط خارج نیست: "فلان فایل Assembly یا کتابخانه موجود نیست!". اما خوبی این وضعیت اینست که شما در هر بار که یکی از Dll های لازم را یافته و به فولدر Bin در محل فولدر برنامه در سرور آپلود میکنید کمبود یک Dll دیگر اعلام میشود، و بدین ترتیب بعد از چند بار آپلود کمبودها دیگر مشکل برطرف میشود. اکنون شما لیستی از Dll های اضافی که میبایست در فولدر Bin برنامه هایتان آپلود کنید خواهید داشت و از دفعه دیگر آنها را نیز بهمراه برنامه تان آپلود خواهید کرد.
نکته:
برای اینکه تنظیمات customErrors از این ببعد در برنامه های بعدی تان مطابق آنچه که صحیح است قرار داشته باشد میتوانید این تنظیم را نیز در همان فایل Web.Config فوق اعمال کنید.