PDA

View Full Version : پاک کردن یه پوشه با محتوای Nul , Con



MSHService
دوشنبه 21 بهمن 1387, 19:15 عصر
سلام.
عذر میخوام که تاپیک زدم.
نمی دونستم باید چی جستجو کنم:گریه::خجالت:
یه پوشه داریم که محتواش دو پوشه دیگه به نامهای Nul و Con هستش.
می خوام پوشه مادر اینها رو با دستورات دلفی پاک کنم.
لطفا کمک:لبخند:

Felony
دوشنبه 21 بهمن 1387, 21:05 عصر
باید ابتدا به وسیله ی توابع FindFirst و FindNext محتویات این 2 ساب دایرکتوری رو به دست بیارید و پاک کنید و سپس خود این 2 دایرکتوری و در آخر پوشه ی مادر آنها را .
کدت این طور میشه ، البته من همین جوری نوشتم و تستش نکردم ولی باید درست عمل کنه .

Var
Search:TSearchRec;
begin
// Delete files in Con sub directory
if FindFirst('C:\Own Folder\Con\*.*',FaAnyFile,Search)=0 then
repeat
DeleteFile('C:\Own Folder\Con\'+Search.Name);
until FindNext(Search)<>0;
FindClose(Search);
// Delete files in Nul sub directory
if FindFirst('C:\Own Folder\Nul\*.*',FaAnyFile,Search)=0 then
repeat
DeleteFile('C:\Own Folder\Nul\'+Search.Name);
until FindNext(Search)<>0;
FindClose(Search);
// Delete directorys
RMDir('C:\Own Folder\Con');
RMDir('C:\Own Folder\Nul');
RMDir('C:\Own Folder');
end;

MSHService
سه شنبه 22 بهمن 1387, 09:13 صبح
ممنون SilverSoft.
جواب نداد!الان تستیدم. هر کارم می کنم نمی تونم پاکشون کنم.
در ضمن داخل پوشه Nul و Con چیزی نیست.
ببین، این دو تا پوشه فرق می کنن.
لطفا یه راهنمایی دیگه کنید.
من منتظرم.
کمک......

Felony
سه شنبه 22 بهمن 1387, 09:41 صبح
جواب نداد!الان تستیدم. هر کارم می کنم نمی تونم پاکشون کنم.
در ضمن داخل پوشه Nul و Con چیزی نیست.

مطمئنی این 2 پوشه وجود دارند ؟ من الان کدهام رو با یه مسیر دیگه تست کردم صحیح عمل کرد بدون هیچ مشکلی ، ولی وقتی خواستم کدی ها رو با پوشه های شما تست کنم رفتم تو یکی از درایوهام و یه فولدر به نام Own Folder ساختم و داخلش هم اومدم که 2 تا فولدر با نام های Con و Nul بسازم که فهمیدم ویندوز نمیزاره این 2 نام رو برای پوشه در نظر بگیری و اونها رو رزرو کرده .

شما چه طور این فولدرها رو ساختید خدا داند ، ولی در هر صورت وقتی ویندوز اجازه ی ساختشون رو نمیده از دلفی چه توقعی دارید که پاکشون کنه ؟

MSHService
سه شنبه 22 بهمن 1387, 09:51 صبح
عزیز با یه batch file راحت ساخته میشن:
C:
cd\
md autorun.inf\con\
md autorun.inf\nul\
pause
md autorun.inf\con\
md autorun.inf\nul\
pause
من منتظرم.

Felony
سه شنبه 22 بهمن 1387, 11:13 صبح
عزیز با یه batch file راحت ساخته میشن:



خودتون دارید میگید Batch File این فایلها ساختار MS Dos دارن و ساختارشون با زبانهای برنامه نویسی یکی نیست ، نمیگم نمیشه این کار رو کرد ، 100% میشه ولی فکر نکنم به این راحتی باشه در هر صورت راختترین راه اینکه یه BatchFile برای از بین بردنشون بنویسید و بعد اگر خواستید با دلفی اجراش کنید .

MSHService
سه شنبه 22 بهمن 1387, 11:52 صبح
فقط میخوام این فایل پاک بشه.
کمک کنید.هر راهی که به نظرتون میرسه.
من نتونستم با batch پاکش کنم.
کمک...

Felony
سه شنبه 22 بهمن 1387, 14:05 عصر
همونطور که موقع ساختش با یک \ سر سیستم رو کلاه میزارید ، همونطور هم پاکش کنید :



C:
cd\
rd autorun.inf\con\
rd autorun.inf\nul\
rd autorun.inf\con\
rd autorun.inf\nul\
rd autorun.inf

MSHService
سه شنبه 22 بهمن 1387, 17:31 عصر
ممنون رفیقا(خودمونی شدم).
حل شد.
نمدونم چرا هر چی دکمه تشکر رو کلیک می کنم فعال نمیشه!!:گریه:
اخه میخواستم از همه تشکر کنم.:خجالت:
بازم ممنون از راهنمایی هاتون.

3dboy1
جمعه 28 فروردین 1388, 06:58 صبح
برای حذف پوشه ای با نام con در درایو سی باید در cmd بنویسید
کد:
rd\\.\C:\conبرای اینکه بتوانید یک پوشه را حذف کنید باید درون آن فایل یا پوشه ای دیگر نباشد یعنی کاملا خالی باشد

Felony
جمعه 28 فروردین 1388, 08:13 صبح
برای حذف پوشه ای با نام con در درایو سی باید در cmd بنویسید
کد:
rd\\.\C:\conبرای اینکه بتوانید یک پوشه را حذف کنید باید درون آن فایل یا پوشه ای دیگر نباشد یعنی کاملا خالی باشد

تاریخ تاپیک رو دیدی ...

حالا که تاپیک بالا اومد اینم بگم که چند وقت پیش دقیقا خودم نیاز پیدا کردم که این کار رو با دلفی انجام بدم و بعد از چندین دقیقه دستکاری و نوشتن کد فهمیدم که برای انجام این کار تو دلفی کافی هست که یه \ به آخر آدرس اضافه کنی ...

برای ساخت :

MKDir('D:\Nul\');

برای پاک کردن :

RMDir('D:\Nul\');