Folder Guard

By | 2018-02-28

With this code you can create a application that watches specified folders. When someone try’s to access a folder that is being watched, the application closes the folder and displays an error message.

Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long

Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" _
(ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long

Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" _
(ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long

Const NILL = 0&
Const WM_SYSCOMMAND = &H112
Const SC_CLOSE = &HF060

'----------------------------------

Public Sub sFolderGuard(ByVal sWindow As String)
Dim sReadMessage As String

hWndX = FindWindow(vbNullString, sWindow)
sCloseWindow = SendMessage(hWndX, WM_SYSCOMMAND, SC_CLOSE, NILL)

If FindWindow(vbNullString, sWindow) Then

    MsgBox "Message",vbCritical,"Title"
    Exit Sub

End If

End Sub

Then on the form, maybe in a timer or something copy the following.

sFolderGuard "x" 'Where x is the name of the folder to watch

Author: dwirch

Derek Wirch is a seasoned IT professional with an impressive career dating back to 1986. He brings a wealth of knowledge and hands-on experience that is invaluable to those embarking on their journey in the tech industry.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.