PDA

View Full Version : موقع Publish سایت فایل Access فقط خواندنی میشه



Happy_davood
پنج شنبه 28 تیر 1386, 16:20 عصر
سلام
من یه فایل Access به عنوان دیتابیس دارم . تا زمانیکه ازش SELECT می زنم مشکلی وجود نداره ولی زمان Update یا Insert به خاطر اینکه دیتابیس ReadOnly هست خطا می ده . زمانیکه از فایل سیستم استفاده می کنم مشکلی وجود نداره ولی وقتی publish می کنم فایل Access فقط خواندنی میشه .
سعی کردم از IIS هم اختیارات لازم رو به پوشه App_Data بدم تا بشه Write هم کرد ولی نشد .

ممنون از همه .

marzban
پنج شنبه 28 تیر 1386, 16:53 عصر
چون از access استفاده می کنید ،access وقتی برروی اون عمل خواندن یا نوشتن انجام می دید خودش را قفل می کنه.
چک کنید که آیا همه کانکشن ها را بسته اید و یا کانکشن باز ندارید
بهتر بود پیام خطا را اینجا می گذاشتید تا بهتر بتونیم کمک کنیم

mehranFX
پنج شنبه 28 تیر 1386, 18:33 عصر
شاخه ای که فایل اکسس در آن واقع شده است باید دارای write premission برای یوزر ASP.net باشد !

Happy_davood
جمعه 29 تیر 1386, 12:45 عصر
خوب جواب آخر خیلی منطقی و درست به نظر میرسه . من این کار رو هم کردم ولی تاثیری نکرد .
به لیست کاربران اون پوشه ASPNET رو اضافه کردم و تمام Permission ها رو هم دادم .

آهان یادم اومد ، فایل Access وقتی Publish شد ReadOnly میشه . خوب این فایل رو با خود اکسس هم نمیشه تغییر داد و من کلیک راست می کنم تیک رو از گزینه ReadOnly بر می دارم ولی دوباره میبینم ReadOnly هست .

mehranFX
جمعه 29 تیر 1386, 13:42 عصر
خوب جواب آخر خیلی منطقی و درست به نظر میرسه . من این کار رو هم کردم ولی تاثیری نکرد .
به لیست کاربران اون پوشه ASPNET رو اضافه کردم و تمام Permission ها رو هم دادم .

آهان یادم اومد ، فایل Access وقتی Publish شد ReadOnly میشه . خوب این فایل رو با خود اکسس هم نمیشه تغییر داد و من کلیک راست می کنم تیک رو از گزینه ReadOnly بر می دارم ولی دوباره میبینم ReadOnly هست .
باید روی سرور این دسترسی به یوزر ASP.NET داده بشه نه اینکه روی سیستمی که برنامه رو توسعه میدهید این کار رو انجام بدید ! خوش باشی !

babi_wd
جمعه 29 تیر 1386, 14:44 عصر
اصولا شما باید فایل دیتا بیس رو تو شاخه ای بنام Db که برای بقیه قابل دسترسی نیست بزارین
این شاخه دارای دسترسی نوشتن میباشد
وگر نه باید به شاخه ای که توی اون دیتابیس رو گذاشتی دسترسی بدی

marzban
شنبه 30 تیر 1386, 08:13 صبح
اکثر هاست ها یک زیر پوشه بنام db دارند و شما می تونید فایل خودتون را داخل اون جا کپی کنید و مسیر کانکشن خودتون را اصلاح کنید.
در بعضی از مواقع وقتی پوشه بانک را در www کپی می کنید این مشکل ممکن است پیش بیاید

Happy_davood
شنبه 30 تیر 1386, 20:56 عصر
ممنون از جوابتون .
خوب آقای MehranFX باید بگم که من این کار رو روی سرور انجام دادم نه کلاینت . بازم میگم جواب شما خیلی منطقی و درسته منتهی نشد .
ضمناً من برنامه رو روی هاست نزاشتم و روی سیستم خودم Publish می کنم و از LocalHost استفاده می کنم . همه چیز خودم هستم . فایل رو هم گذاشتم داخل App_Data . البته داخل تمام پوشه ها این اتفاق میافته .

از داخل IIS میشه کاری کرد ؟

marzban
شنبه 30 تیر 1386, 21:10 عصر
شما دسترسی write ندارید باید مجوز write رو بدید
از user زیر استفاده کنید
IUSR_Computer_Name

marzban
شنبه 30 تیر 1386, 21:24 عصر
Open the file explorer
Tools menu
Options menu
Click the [View] tab
Uncheck "Use simple file sharing"
Click OK
Find the folder in which your MDB file is kept
Right-click the folder
Select "Sharing and security"
Click the [Security] tab
Click the Add button
Click the Advanced button
Click the Find Now button
Select the ASPNET user and click OK
In the checkboxes at the bottom of the form, give this user Full Control
شما حتما خط آخر را باید رعایت کنید
موفق باشی

Happy_davood
چهارشنبه 17 مرداد 1386, 08:46 صبح
جالبه همه جا این جواب رو می دند ولی نمیشه .
من از این روش استفاده کردم و شد .
روی فولدر کلیک راست کردم . در گزینه Web Sharing روی گزینه Share this folder تیک زدم . حل شد !