How to Install WinDivert Driver and Service for Zapret: Complete Setup Guide
Run service.bat as Administrator, select "1. Install Service", choose a strategy file, and the batch script automatically registers the zapret Windows service and loads the WinDivert kernel driver from bin/WinDivert64.sys.
The Flowseal/zapret-discord-youtube repository provides a deep packet inspection (DPI) bypass tool that requires the WinDivert driver to intercept and modify network traffic on Windows. Installing the WinDivert driver and service for Zapret is fully automated through the repository's batch scripts, which handle driver registration, service creation, and cleanup without requiring manual sc commands for the main components.
Prerequisites: Download and Extract the Release
Before installing the driver, obtain the correct binaries from the repository. Download the latest ZIP archive from the releases page of Flowseal/zapret-discord-youtube.
Extract the contents to a folder path containing only Latin characters—avoid spaces, Cyrillic, or special characters. The archive includes a bin directory containing the essential driver files:
bin/WinDivert64.sys– The signed 64-bit WinDivert kernel driverbin/WinDivert.dll– The userspace library for driver communicationbin/winws.exe– The Zapret executable that loads the driver
If Windows blocked the downloaded ZIP, right-click the archive, select Properties, check Unblock, then extract.
Automatic Installation via Service Manager
The recommended method uses service.bat, which automates service creation and driver loading.
Step-by-Step Service Installation
-
Open an elevated Command Prompt (Administrator rights are mandatory for driver installation).
-
Navigate to the extracted folder and launch the service manager:
service.bat -
From the menu, select 1 → Install Service.
-
When prompted, choose a strategy file (e.g.,
general.bat) that defines your DPI bypass rules. The script captures this selection and configures the service to launchwinws.exewith the appropriate arguments. -
The script verifies the presence of
bin/WinDivert64.sys. If the driver file is missing, it aborts and instructs you to restore the files from the repository.
How the Installation Works
The service.bat script performs several critical operations defined in the source. It first stops and removes any existing zapret service to prevent conflicts:
set "BIN_PATH=%~dp0bin\"
net stop %SRVCNAME% >nul 2>&1
sc delete %SRVCNAME% >nul 2>&1
Then it creates the new Windows service using the sc command:
sc create %SRVCNAME% binPath= "\"%BIN_PATH%winws.exe\" !ARGS!" DisplayName= "zapret" start= auto
When the system starts the zapret service, winws.exe automatically loads WinDivert64.sys into the kernel. No separate sc create WinDivert command is required because the executable handles driver initialization internally.
Verifying the Driver Installation
Confirm that WinDivert is active using built-in Windows tools. After installation, run these commands in an elevated prompt:
driverquery | find "Divert"
sc query WinDivert
Both commands should report the driver status as RUNNING. If the service has not yet been started by the bypass strategy, it may show as STOP_PENDING until you activate the Zapret service:
sc start zapret
Manual Driver Installation (Optional)
If you prefer to register the WinDivert driver independently rather than using the automatic service manager, copy WinDivert64.sys to a permanent system location and create the service manually:
copy bin\WinDivert64.sys C:\Windows\System32\drivers\
sc create WinDivert binPath= "C:\Windows\System32\drivers\WinDivert64.sys" type= kernel start= auto
sc start WinDivert
This mirrors the behavior performed automatically by service.bat, but gives you direct control over the kernel driver registration. Note that you must still create the zapret service separately to run the actual DPI bypass logic.
Removing the Driver and Service
To uninstall WinDivert and clean up all Zapret services, run service.bat again and select 2 → Remove Services. This executes the cleanup routine that stops and deletes both the zapret service and any orphaned WinDivert or WinDivert14 driver services.
For manual removal, use these commands:
sc stop zapret
sc delete zapret
sc stop WinDivert
sc delete WinDivert
This ensures the kernel driver is unloaded and the service registry entries are purged.
Summary
- Primary method: Run
service.batas Administrator and select "Install Service" to automatically configure thezapretservice and loadWinDivert64.sys. - Key files: The driver resides in
bin/WinDivert64.syswith its companionbin/WinDivert.dll, loaded bybin/winws.exewhen the service starts. - Verification: Use
driverqueryandsc query WinDivertto confirm the driver is running. - Cleanup: Use
service.batoption 2 or manualsc deletecommands to remove services and unload the driver.
Frequently Asked Questions
Do I need to manually register WinDivert64.sys with Windows?
No. According to the Flowseal/zapret-discord-youtube source code, the service.bat script creates only the zapret service. The winws.exe executable automatically loads WinDivert64.sys from the bin directory when the service starts. Manual registration using sc create WinDivert is optional and only necessary if you want the driver loaded independently of the Zapret service.
Why does the installation fail with a "driver not found" error?
The batch script checks for bin/WinDivert64.sys before creating the service. If this file is missing—often caused by antivirus software quarantining the driver or an incomplete extraction—the script aborts. Restore the file from the original ZIP archive or disable real-time protection temporarily during extraction, as noted in the repository's README.md.
Can I install the driver if my folder path contains Cyrillic characters?
No. The batch scripts and Windows service commands require ASCII-compatible paths. Extract the repository to a directory containing only Latin characters (A-Z, a-z) and no spaces. Paths like C:\Tools\zapret\ work correctly, while C:\Пользователи\запрет\ cause service creation failures.
How do I know if WinDivert is actually filtering traffic?
After starting the service with sc start zapret or through service.bat, run driverquery | find "Divert" in an elevated prompt. If the driver status shows RUNNING, WinDivert is active in the kernel. Additionally, the zapret service process (winws.exe) should appear in Task Manager, indicating the DPI bypass strategy is executing.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →