PDA

View Full Version : مشکل در حذف یک فایل



PrinceDotNet
شنبه 22 بهمن 1384, 15:54 عصر
سلام

من از کد زیر برای حذف فایل about.inc در شاخه ی اصلی سایت استفاده می کنم ولی پیغام Accees denied رو میده.
مشکل از کجاست؟



Dim f As New FileInfo(Server.MapPath(".") & "about.inc")
f.Delete()


یا از کد


Dim f As New FileInfo(Server.MapPath(".") & "\about.inc")
f.Delete()

مهران فروردین
شنبه 22 بهمن 1384, 19:41 عصر
سلام PrinceDotNet گرامی:
پیام Accees denied یعنی اینکه فایل In Use است، این فایل جائی در بالاتر باز شده و بسته نشده است، و هنوز در حال سرویس دهی به سیستم عامل، برنامه شما و یا چیز دیگری است - قسمتهای قبلی برنامه خود و نرم افزارها یا سیستم عامل که ممکن است سرویسی از این فایل بگیرند (مثلا در حال خواندن اطلاعات از آن باشند) و یا سرویسی به آن بدهند (مثلا در حال نوشتن اطلاعات در آن باشند) را بررسی کنید البته ممکن است کار سرویس تمام شده باشد اما فایل همچنان باز مانده باشد. قبل از انجام هرگونه عملیات حذف، اضافه و غیره روی فایلها ببینید با چه Handel ای فایل باز شده و آنرا ببندید. ضمنا File Attlib.. را هم کنترل کنید - البته احتمال آن کم است ولی ضرر ندارد ممکن است سیستم عامل در دادن پیام خطای مناسب اشتباه کند صفت فایل را اگر ReadOnly است به R/W تبدیل کنید ضرر ندارد البته خیلی بعید است که مشکل این باشد اما گاهی پیش می آید.

mehranFX
شنبه 22 بهمن 1384, 20:06 عصر
سلام PrinceDotNet گرامی:
پیام Accees denied یعنی اینکه فایل In Use است، این فایل جائی در بالاتر باز شده و بسته نشده است، و هنوز در حال سرویس دهی به سیستم عامل، برنامه شما و یا چیز دیگری است - قسمتهای قبلی برنامه خود و نرم افزارها یا سیستم عامل که ممکن است سرویسی از این فایل بگیرند (مثلا در حال خواندن اطلاعات از آن باشند) و یا سرویسی به آن بدهند (مثلا در حال نوشتن اطلاعات در آن باشند) را بررسی کنید البته ممکن است کار سرویس تمام شده باشد اما فایل همچنان باز مانده باشد. قبل از انجام هرگونه عملیات حذف، اضافه و غیره روی فایلها ببینید با چه Handel ای فایل باز شده و آنرا ببندید. ضمنا File Attlib.. را هم کنترل کنید - البته احتمال آن کم است ولی ضرر ندارد ممکن است سیستم عامل در دادن پیام خطای مناسب اشتباه کند صفت فایل را اگر ReadOnly است به R/W تبدیل کنید ضرر ندارد البته خیلی بعید است که مشکل این باشد اما گاهی پیش می آید.
لزوماً پیام Access denied به معنی In Use بودن نیست بلکه بدون مجوز های کاربری لازم هم امکان دریافت چنین خطایی وجود دارد و بلکه در این مورد خاص احتمال قوی تری نیز می باشد !!!

مهران فروردین
شنبه 22 بهمن 1384, 20:46 عصر
دوست عزیز:
من نگفتم لزوما فایل In Use است سه امکان را پیشنهاد کردم:
1) In Use بودن فایل
2) خصوصیت File Attribute
3) احتمال ضعیف مشکل سیستم عامل در پیام مطابق با خطا
و اگر به معنی File Attrib ذکر شده توجه نمایید معنی آن مجوزهای لازم برای عملیات حذف، اضافه، ویرایش و هر عملیات دیگری روی فایل می باشد نه لزوما خصوصیت ذکر شده در پانل کنترل ویندوز. و اگر In Use بودن را قبل از File Attribute ذکر کردم بدلیل این بود که معمولا در ره گیری خطا بهتر است ابتدا مسائل ساده تر را بررسی کرد.

در هر صورت با توجه به اطلاعات خیلی کمی که در دسترس است (فقط دو خط برنامه) نمی توان موارد بیشتری را حدس زد و عجیب است که با سه علامت تعجب در آخر متن از راهنمائی صادقانه من استقبال کردید در حالیکه سوال از شما نبود. اگر هم غلط بود می بخشید نیت من خیر بود. (خدانگهدار)

PrinceDotNet
یک شنبه 23 بهمن 1384, 14:00 عصر
مشکل حل شد ممنون.

باید سطح دسترسی رو کامل می کردم تا به فایل دسترسی پیدا کنه.