۱۶-مهر-۱۳۹۰, ۱۸:۱۴:۲۶
۱۶-مهر-۱۳۹۰, ۱۸:۵۴:۰۶
خوب دوست عزیز ببینم چه نوع فایلی را میخواهی حذف کنی اگه سیستمی باشه که عمرا بشه یا مگه دوستان که حرفه ای هستند
منظورم اینه که اگر لازم ویندوز باشن یا حیاطی باشن نمیشه
2- اگه مال ویروس باشن هم نمیشه چون ویروس در حال اجرا است و نمیزاره که حذف بشن
3- اگه مخفی هم باشن یکم مشکله یا باید برنامه را یکم پیشرفته باشه که فایل های مخفی را هم بتونه حذف کنه
منظورم اینه که اگر لازم ویندوز باشن یا حیاطی باشن نمیشه
2- اگه مال ویروس باشن هم نمیشه چون ویروس در حال اجرا است و نمیزاره که حذف بشن
3- اگه مخفی هم باشن یکم مشکله یا باید برنامه را یکم پیشرفته باشه که فایل های مخفی را هم بتونه حذف کنه
۱۷-مهر-۱۳۹۰, ۱۱:۲۰:۵۶
با کمی تغيير از مثالی که ضمينه کردم ميتونيد استفاده کنيد
۱۷-مهر-۱۳۹۰, ۱۱:۵۴:۰۲
با بچ فایل از همه ساده تره :)
del *.xyz /s
del *.xyz /s
۱۷-مهر-۱۳۹۰, ۱۸:۴۹:۱۹
دوستان عزیز من خودم یه سورس برای سرچ دارم ولی نیدونم چطوری فایل هایی رو که پیدا میکنه پاکشون کنم ( منظورم اینه که از تو کامپیوترپاک کنم ) سورس رو ضمینه میکنم
مرسی
مرسی
۱۸-مهر-۱۳۹۰, ۰۱:۵۱:۱۳
سلام.
شما با API های FindFirstFile و FindNextFile میتونی کل فایل و فولدرهای داخل یه آدرس رو به دست بیاری.
بهتره یه تابع بنویسی که ازت آدرس بگیره و فایل و فولدرهای داخلش رو برگردونه.
بعد یه تابع ریکرسیو (بازگشتی) بنویس که با دریافت یه آدرس کل فایل و فولدرهای زیر شاخش رو به کمک تابع اول برای وجود اون پسوند بررسی کنه.
بعد دونه دونه اسامی درایو هارو به تابع ریکرسیو میدی و به این صورت کل هارد بررسی میشه.
این روش و الگوریتم کار. سورس رو هم که دوستان گذاشتن.
شما با API های FindFirstFile و FindNextFile میتونی کل فایل و فولدرهای داخل یه آدرس رو به دست بیاری.
بهتره یه تابع بنویسی که ازت آدرس بگیره و فایل و فولدرهای داخلش رو برگردونه.
بعد یه تابع ریکرسیو (بازگشتی) بنویس که با دریافت یه آدرس کل فایل و فولدرهای زیر شاخش رو به کمک تابع اول برای وجود اون پسوند بررسی کنه.
بعد دونه دونه اسامی درایو هارو به تابع ریکرسیو میدی و به این صورت کل هارد بررسی میشه.
این روش و الگوریتم کار. سورس رو هم که دوستان گذاشتن.
۱۹-مهر-۱۳۹۰, ۰۱:۱۷:۵۰
دوست عزیز من منظورتونو متوجه نمیشم آخه تازه کارم اگه میشه سورس بالا رو برای ادیت کنید که با برسی سورس بیشتر متوجه بشم
۱۹-مهر-۱۳۹۰, ۱۶:۵۱:۵۸
(۱۹-مهر-۱۳۹۰, ۰۱:۱۷:۵۰)aliooali نوشته است: [ -> ]دوست عزیز من منظورتونو متوجه نمیشم آخه تازه کارم اگه میشه سورس بالا رو برای ادیت کنید که با برسی سورس بیشتر متوجه بشم
سلام.
کد:
Option Explicit
'Find Drives & Get Type Of Drives
Private Declare Function GetLogicalDriveStringsA Lib "kernel32" (ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long
Private Declare Function GetDriveTypeA Lib "kernel32" (ByVal nDrive As String) As Long
'Find Drives & Get Type Of Drives
'Files And Folders
Private Declare Function FindFirstFileA Lib "kernel32" (ByVal lpFileName As String, lpFindFileData As WIN32_FIND_DATA) As Long
Private Declare Function FindNextFileA Lib "kernel32" (ByVal hFindFile As Long, lpFindFileData As WIN32_FIND_DATA) As Long
Private Declare Function FindClose Lib "kernel32" (ByVal hFindFile As Long) As Long
Private Type FILETIME
dwLowDateTime As Long
dwHighDateTime As Long
End Type
Private Type WIN32_FIND_DATA
dwFileAttributes As Long
ftCreationTime As FILETIME
ftLastAccessTime As FILETIME
ftLastWriteTime As FILETIME
nFileSizeHigh As Long
nFileSizeLow As Long
dwReserved0 As Long
dwReserved1 As Long
cFileName As String * 260
cAlternate As String * 14
End Type
Private Const FILE_ATTRIBUTE_DIRECTORY = &H10
'Files And Folders
Private Sub Command1_Click()
Dim strDrives() As String
Dim I As Byte
strDrives = FindDrives
For I = 0 To UBound(strDrives)
RemoveFiles strDrives(I), "txt"
Next I
End Sub
Private Function FindDrives() As String()
Dim strSaveDrives As String, strNamedrv(1 To 100) As String, strFixDrives As String
Dim I As Byte, keer As Byte
'Find Drives
strSaveDrives = String(255, vbNullChar)
GetLogicalDriveStringsA 255, strSaveDrives
For keer = 1 To 100
If Left(strSaveDrives, InStr(1, strSaveDrives, vbNullChar)) = vbNullChar Then Exit For
strNamedrv(keer) = Left(strSaveDrives, InStr(1, strSaveDrives, vbNullChar) - 1)
strSaveDrives = Right(strSaveDrives, Len(strSaveDrives) - InStr(1, strSaveDrives, vbNullChar))
Next keer
'Getting Type Of Drives
For I = 1 To keer - 1
Select Case GetDriveTypeA(strNamedrv(I))
Case Is = 2
'Removable
Case Is = 3
'Fix
strFixDrives = strFixDrives & strNamedrv(I) & "*"
Case Is = 4
'Remote
Case Is = 5
'CD-Rom
Case Is = 6
'Ram Disk
Case Else
'Unrecognized
End Select
Next I
strFixDrives = Left(strFixDrives, Len(strFixDrives) - 1)
FindDrives = Split(strFixDrives, "*")
End Function
Private Sub RemoveFiles(strAdrs As String, strType As String)
Dim strFldAndFleNames() As String
Dim I As Integer
strFldAndFleNames = Find_Files_Folders(strAdrs)
For I = 0 To UBound(strFldAndFleNames)
If strFldAndFleNames(I) = ":" Then Exit For
RemoveFiles strAdrs & "\" & strFldAndFleNames(I), strType
Next I
On Error Resume Next
For I = I + 1 To UBound(strFldAndFleNames)
If UCase(Right(strFldAndFleNames(I), Len(strFldAndFleNames(I)) _
- InStrRev(strFldAndFleNames(I), "."))) = UCase(strType) Then
Beep
'Kill strAdrs & "\" & strFldAndFleNames(I)
End If
Next I
End Sub
Private Function Find_Files_Folders(strAdrs As String) As String()
Dim strFldAndFleName As String, strFolders As String, strFiles As String
Dim lngSearch As Long, lngNext As Long
Dim FindInfo As WIN32_FIND_DATA
lngSearch = FindFirstFileA(strAdrs & "\*.*", FindInfo)
If lngSearch <> -1 Then
Do
strFldAndFleName = Left(FindInfo.cFileName, InStr(FindInfo.cFileName, vbNullChar) - 1)
If (FindInfo.dwFileAttributes And FILE_ATTRIBUTE_DIRECTORY) <> 0 Then
strFolders = strFolders & strFldAndFleName & "*"
Else
strFiles = strFiles & "*" & strFldAndFleName
End If
lngNext = FindNextFileA(lngSearch, FindInfo)
Loop Until lngNext = 0
FindClose lngSearch
End If
If Left(strFolders, 5) = ".*..*" Then strFolders = Right(strFolders, Len(strFolders) - 5)
strFldAndFleName = strFolders & ":" & strFiles
Find_Files_Folders = Split(strFldAndFleName, "*")
End Function
۲۱-مهر-۱۳۹۰, ۱۷:۳۰:۴۳
دوست عزیز من که گفتم که من تازه کارم و نمیدونم این کنترل هایی که میگین کجا هستن
اگه امکان داره اینا رو روی سورس خودم که ضمینه کردم اعمال کنید
دوست عزیز من که گفتم که تازه کارم و نمیدونم که این کنترل هایی رو که میگید از کجا بیارم
اگه ممکنه روی سورس خودم اعمال کنید متشکر میشم
اگه امکان داره اینا رو روی سورس خودم که ضمینه کردم اعمال کنید
دوست عزیز من که گفتم که تازه کارم و نمیدونم که این کنترل هایی رو که میگید از کجا بیارم
اگه ممکنه روی سورس خودم اعمال کنید متشکر میشم
۲۳-مهر-۱۳۹۰, ۰۲:۱۴:۵۵
سلام.
نشد دیگه. دیگه داری تنبلی میکنی. اصلا همینم نباید مینوشتم.
دیگه یه کپی پیست کردن کد اگه بلد نیستی اول برو کمی مطالعه کن بعد به فکر نوشتن برنامه باش.
نشد دیگه. دیگه داری تنبلی میکنی. اصلا همینم نباید مینوشتم.
دیگه یه کپی پیست کردن کد اگه بلد نیستی اول برو کمی مطالعه کن بعد به فکر نوشتن برنامه باش.