ورود

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



little.boy
پنج شنبه 28 اردیبهشت 1391, 18:42 عصر
چطور می شه فایلی که قبلا ایجاد شده رو وقتی به آدرسش دسترسی داریم lock کنیم. فرض کنید که فایل قابل باز کردن هست

سوالم رو این طور تصحیح می کنم:فرض کنید برنامه از یک سری فونت استفاده می کنه که اونهارو در شاخه temp کاربر ایجاد می کنه. بعد از این کار، چه باید کرد که کاربر نتونه فایل های ایجاد شده رو، تا هنگامی که برنامه در حال اجراست، پاک کنه؟

ASGGSA
یک شنبه 31 اردیبهشت 1391, 19:35 عصر
سلام.
اگه برنامه در حال اجرا است و این برنامه از این فایل ها استفاده می کند خب معلومه ویندوز هم اجازه پاک کردن این فایل ها رو به کاربر نمی دهد.

mehdi.mousavi
دوشنبه 01 خرداد 1391, 00:28 صبح
چطور می شه فایلی که قبلا ایجاد شده رو وقتی به آدرسش دسترسی داریم lock کنیم. فرض کنید که فایل قابل باز کردن هست

سلام.
می تونید فایل رو با CreateFile (http://msdn.microsoft.com/en-us/library/aa363858%28v=vs.85%29.aspx) باز کنید و پارامتر dwShareMode رو صفر بذارید تا فایل منحصرا در اختیار Process شما باشه.
البته شما می تونید در صورت نیاز از LockFile (http://msdn.microsoft.com/en-us/library/aa365202%28v=vs.85%29.aspx) برای Lock کردن Region ای از فایل نیز استفاده کنید.

موفق باشید.