سلام
فعلا اینو پیدا کردم
این فقط تشخیص می ده که تغییری ایجاد شده ولی نمی تونه بفهمه که چه تغییری!
دارم دنبال نمونه های بهتری می گردم
اگر پیدا کردم می گذارم
این برنامه به یک دکمه و یک تکس باکس و یک لیبل نیاز داره
آدرس درایو و یا آدرس مورد نظر رو بهش بده و روی دکمه کلیک کن بعد اگر تغییری ایجاد بشه متن لیبل عوض می شه
Option Explicit
Private Const FILE_NOTIFY_CHANGE_ATTRIBUTES = &H4
Private Const FILE_NOTIFY_CHANGE_DIR_NAME = &H2
Private Const FILE_NOTIFY_CHANGE_FILE_NAME = &H1
Private Const FILE_NOTIFY_CHANGE_SIZE = &H8
Private Const FILE_NOTIFY_CHANGE_LAST_WRITE = &H10
Private Const FILE_NOTIFY_CHANGE_SECURITY = &H100
Private Const FILE_NOTIFY_CHANGE_ALL = &H4 Or &H2 Or &H1 Or &H8 Or &H10 Or &H100
Private Declare Function FindFirstChangeNotification Lib "kernel32" Alias "FindFirstChangeNotificationA" (ByVal lpPathName As String, ByVal bWatchSubtree As Long, ByVal dwNotifyFilter As Long) As Long
Private Declare Function FindCloseChangeNotification Lib "kernel32" (ByVal hChangeHandle As Long) As Long
Private Declare Function FindNextChangeNotification Lib "kernel32" (ByVal hChangeHandle As Long) As Long
Private Declare Function WaitForSingleObject Lib "kernel32" (ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long
Private Declare Function ResetEvent Lib "kernel32" (ByVal hEvent As Long) As Long
Public Sub WaitForFileChange(ByVal fn As String, Optional ByVal flags = FILE_NOTIFY_CHANGE_ALL, _
Optional ByVal CheckSubDir As Boolean = True, Optional ByVal TimeOut As Long = -1)
Dim hNote As Long
hNote = FindFirstChangeNotification(fn, CheckSubDir, flags)
WaitForSingleObject hNote, TimeOut
FindCloseChangeNotification hNote
Label1.Caption = "File Changed!"
End Sub
Private Sub Command1_Click()
Label1.Caption = ""
WaitForFileChange Trim(Text1.Text)
End Sub