PDA

View Full Version : کپی فایل در حال استفاده !



Samsam2010
پنج شنبه 18 فروردین 1390, 11:45 صبح
با سلام ، دوستان سال نو رو تبریک میگم !(البته خیلی دیره !)

من دارم اطلاعات مربوط به مرورگر رو کپی میکنم ! اطلاعاتی که مرورگر ازش داره استفاده میکنه ! مثل بوکمارک و هیستوری و ... حالا من میخوام به صورت مرتب از این اطلاعات کپی بگیرم اما به محض اینکه کپی شروع میشه پیغام خطا میاد که فایل در حال استفاده توسط برنامه دیگری است و من باید مرورگر که الان بازه و ببندم و اونوقت کپی رو شروع کنم !
حالا میخواستم ببینم راهی وجود داره که همینطور مرورگر باز بمونه و من اطلاعات در حال استفاده اونو کپی کنم ! یعنی یه جور ارتباط مرورگر رو با فایل قطع کنم کپی رو انجام بدم ! بعد ارتباط رو وصل کنم !

ممنون

محسن شامحمدی
پنج شنبه 18 فروردین 1390, 15:52 عصر
با چی کپی می کنی؟ اگر با ویندوز کپی می کنی و ارور می ده که نمی دونم ولی اگر از تابع io.file.copy استفاده می کنی مشکل از اونه. این تابع نمی تونه فایل های درحال استفاده رو کپی کنه و بجاش می تونی از تابع Api به نام CopyFileA استفاده کنی.

Samsam2010
شنبه 20 فروردین 1390, 15:11 عصر
سلام
دوست من از توجه شما ممنونم .
من با استفاده از همون تابع io.file.copy کپی رو انجام میدم !(که فکر کنم خود ویندوز هم همین تابع رو استفاده میکنه ) اما برای API که معرفی کردید ممنونم (البته الان تستش نکردم)
اما آیا روشی وجود داره که ما پروسسی که در تسک منیجر وجود داره رو نبندیم ! معلق(غیر فعال) کنیم بعد که کارمون انجام شد دوباره فعالش کنیم ؟

محسن شامحمدی
شنبه 20 فروردین 1390, 17:28 عصر
من با استفاده از همون تابع io.file.copy کپی رو انجام میدم !(که فکر کنم خود ویندوز هم همین تابع رو استفاده میکنه )
خیر،ویندوز از اون تابعی که بنده معرفی کردم استفاده می کنه.


اما آیا روشی وجود داره که ما پروسسی که در تسک منیجر وجود داره رو نبندیم ! معلق(غیر فعال) کنیم بعد که کارمون انجام شد دوباره فعالش کنیم ؟
بله ولی برمی گرده به مباحث برنامه نویسی سیستمی که شما می تونید در حالت Kernel Mode یک Proccess رو دیباگ کنید و مثلا اون رو Suspend کنید و بطور کلی در دست بگیرید ولی بحث بسیار پیچیده ایست که پیشنهاد می دم دنبالش نرید.