An application that can lock your Windows PC when a specific USB drive is removed.

To create an application that can lock your Windows PC when a specific USB drive is removed, you can use a combination of PowerShell scripts and a third-party USB monitoring tool. Here's a general outline of how you can achieve this:

### Step 1: Install USB Device Monitoring Software
You will need software that can monitor USB devices and trigger actions when they are connected or disconnected. One such tool is **"USB Drive Logon"**. This software can lock or unlock your PC based on the presence of a specific USB drive.

1. **Download USB Drive Logon**: Download and install the software from [here](https://www.usbdlg.com/).
2. **Configure USB Drive Logon**:
    - Open the USB Drive Logon software.
    - Insert the USB drive you want to use for locking/unlocking.
    - Configure the software to recognize this specific USB drive and set it to lock the computer when the drive is removed.

### Step 2: Create a PowerShell Script (Optional)

If you prefer a more customized solution or if you want to add additional functionalities, you can create a PowerShell script to handle the locking mechanism.

1. **Create a PowerShell Script**:
    - Open a text editor and paste the following script:

    ```powershell
    # Script to lock the computer when a specific USB drive is removed

    # Get the drive letter of the USB drive
    $usbDriveLetter = "E:"  # Change this to your USB drive letter

    # Monitor the USB drive
    while ($true) {
        if (-not (Get-PSDrive | Where-Object { $_.Name -eq $usbDriveLetter })) {
            # Lock the computer if the USB drive is not found
            rundll32.exe user32.dll,LockWorkStation
            break
        }
        Start-Sleep -Seconds 5
    }
    ```

    - Save this script with a `.ps1` extension, for example, `LockOnUsbRemoval.ps1`.

2. **Run the PowerShell Script**:
    - Open PowerShell with administrative privileges.
    - Navigate to the directory where you saved the script.
    - Execute the script by typing `.\LockOnUsbRemoval.ps1`.

### Step 3: Automate the PowerShell Script on Startup (Optional)
To ensure that the PowerShell script runs automatically when your computer starts:

1. **Create a Task Scheduler Task**:

    - Open Task Scheduler.
    - Create a new task.
    - Set the trigger to "At startup".
    - Set the action to "Start a program" and point it to `powershell.exe`.
    - Add arguments to point to your script: `-File "C:\path\to\LockOnUsbRemoval.ps1"`.

### Conclusion
By using a combination of USB Drive Logon software and a PowerShell script, you can effectively lock your Windows PC when a specific USB drive is removed. USB Drive Logon provides a straightforward setup, while the PowerShell script allows for further customization. Choose the method that best suits your needs and security preferences.

Comments