PDA

View Full Version : سوال: باز کردن مجدد فایل باز شده



shytonak
یک شنبه 08 اسفند 1389, 14:46 عصر
دوستان چطور باید فایلی که توسط برنامه یک بار باز شده رو دوباره باز کرد؟
من توی برنامه ام یه فایل رو تو یه قسمت لود می کنم اما وقتی می خوام همون فایل رو یه بار دیگه و تو یه قسمت دیگه لود کنم ارور میده و میگه این فایل توسط یک برنامه مورد استفاده است و امکان استفاده نیست.
حتی اگه بشه اون فایل رو بست و دوباره تو قسمت جدید بازش کرد مشکلم حل میشه.
با تشکر

f4rib0rz
یک شنبه 08 اسفند 1389, 16:00 عصر
برنامه ای که نوشتی رو بزار تا دقیق راهنمایت کنم یا اصلا برات کدش رو بنویسم . نمی دونم چطور نوشتی ولی یه نمونه کد میزارم ببین .
نحوه خوندن تمامی اطلاعات از یه فایل بعد هم بستنش.


filename = Application.StartupPath + "\\db.txt";
StreamReader sr = new StreamReader(filename);
string all = sr.ReadToEnd();
sr.Close();

shytonak
یک شنبه 08 اسفند 1389, 16:48 عصر
این کدیه که نوشتم.
واسه بار اول مشکلی نداره اما وقتی یه بار دیگه این کد اجرا بشه ارور میده و میگه نمی تونه به فایل دسترسی داشته باشه چون فایل به وسیله یه برنامه دیگه باز شده مورد استفاده است.

pdfd[t].FilePath = Environment.GetFolderPath(Environment.SpecialFolde r.History) + msg.ToString() + ".fcfd";
rtb[t].Document = pdfd[t];
rtb[t].Show();
rtb[t].PageNumber = 0;

m.soleimani
یک شنبه 08 اسفند 1389, 20:03 عصر
دوستان چطور باید فایلی که توسط برنامه یک بار باز شده رو دوباره باز کرد؟
من توی برنامه ام یه فایل رو تو یه قسمت لود می کنم اما وقتی می خوام همون فایل رو یه بار دیگه و تو یه قسمت دیگه لود کنم ارور میده و میگه این فایل توسط یک برنامه مورد استفاده است و امکان استفاده نیست.
حتی اگه بشه اون فایل رو بست و دوباره تو قسمت جدید بازش کرد مشکلم حل میشه.
با تشکر


این کدیه که نوشتم.
واسه بار اول مشکلی نداره اما وقتی یه بار دیگه این کد اجرا بشه ارور میده و میگه نمی تونه به فایل دسترسی داشته باشه چون فایل به وسیله یه برنامه دیگه باز شده مورد استفاده است

این همون کاری هست که دیتابیس‌ها انجام می‌دن. اگر حجم فایل مورد نظر شما زیاد نباشه و در آینده هم خیل زیاد نشه شما می‌تونید هر بار که یک کانکشن به یک فایل می‌دین یه فایل نمونه از اون درست کنید و فایل اصلی را سریع ببندید بعد از این هر عملیاتی که در فایل اصلی شماره دو رخ داده را با چک کردن این که قبل شما کسی که مجوز اون تغییرات را داشته تغییر نداده روی فایل اصلی پیاده کنید و فایل کمکی را پاک کنید. یه چیزی تو مایه‌های دیتاست اگر اشتباه نگفته باشم موفق باشید./