Если не помогло

"Zapret must be extracted from archive first": что делать

Строка означает, что bat-файл не нашёл рядом папку bin: сборку запустили из архива или распаковали не целиком. Распакуйте архив по пути без кириллицы, например в C:\zapret.

Чёрное окно мелькнуло и закрылось, а в нём успели прозвучать две строки: Zapret must be extracted from archive first or bin folder not found for some reason и Press any key to continue . . .. Это значит, что bat-файл не нашёл рядом с собой папку bin, где лежат рабочие файлы обхода. Почти всегда причина одна: вы запустили сборку прямо из архива или распаковали не всё. Распакуйте архив целиком и запустите заново, а не открывайте файл из окна архиватора.

Откуда берётся эта строка

Перед стартом bat-файл проверяет, есть ли рядом с ним папка bin: в ней лежит winws.exe, сам движок обхода. Скрипт ищет его по принципу «там же, где я лежу». Нет папки? Печатается эта строка, и окно закрывается. Проверка идёт до запроса прав администратора, поэтому окна UAC вы не увидите: сборка падает раньше.

Zapret must be extracted from archive first or bin folder not found for some reason
Press any key to continue . . .

Самый частый случай — двойной клик по bat-файлу в окне архиватора. Архиватор вытаскивает один файл во временную папку, bin там нет. Это как открыть письмо из коробки, не распаковав коробку. Реже бывает, что распаковали только bat-файлы, а папки bin, lists и остальные не тронули, или при распаковке вышла папка в папке, и bat-файлы скопировали наружу. Ещё вариант — антивирус удалил папку bin целиком.

Проверьте глазами: откройте папку, где лежит service.bat. Рядом должна стоять папка bin. Если папка на месте, а не хватает только файла WinDivert64.sys внутри неё, это другая строка и другая причина: о ней подробно на странице про пропавший WinDivert64.sys.

Распаковать архив правильно

  1. 1

    Откройте свойства скачанного архива

    Внизу окна свойств поставьте галочку «Разблокировать» и нажмите «Применить». Если у вас 7-Zip или PeaZip, этот шаг можно пропустить.

  2. 2

    Распакуйте архив целиком

    Правой кнопкой по архиву → «Извлечь всё…». Двойной клик по zip открывает архив как папку, но это не распаковка: файлы остаются внутри архива.

  3. 3

    Проверьте путь

    В пути к папке не должно быть русских букв, пробелов и спецсимволов. Документация говорит прямо: «Распакуйте содержимое архива по пути, который не содержит кириллицу/спец. символы».

  4. 4

    Положите папку в корень диска

    Подойдёт C:\zapret или D:\zapret, корень не обязательно значит диск C. Главное, чтобы путь был коротким и чистым.

  5. 5

    Запустите service.bat или general.bat уже из распакованной папки

    Если рядом есть bin, строка про must be extracted не появится.

Полная установка с нуля, включая DNS и первый запуск, разобрана на странице установки сборки. Где взять архив и как убедиться, что он настоящий, подробно на странице о GitHub-репозитории.

Жёлтая строка: в пути есть русские буквы

Если запустить Run Diagnostics, при кириллице в пути вы увидите жёлтую строку [?] The path where Zapret is installed contains Cyrillic characters, а под ней совет сборки: If bypass doesn't work, try to move Zapret to another directory, for example in C:\zapret. Первой строкой диагностика печатает путь зелёным: Zapret is installed in: 'C:\Users\Иван\Downloads\zapret\'. По нему сразу видно, где именно прячутся русские буквы.

Диагностика ищет русские буквы в пути к папке сборки. Типичный источник — имя пользователя Windows: если пользователь назван Иван, папка «Загрузки» или «Рабочий стол» автоматически содержит кириллицу в адресе, и распакованная туда сборка попадает под эту строку. Консольные скрипты и русские буквы в пути дружат плохо: часть команд перестаёт находить файлы, и обход ломается без всяких сообщений об ошибке.

Переименовывать пользователя не нужно. Вынесите папку сборки из C:\Users\… в корень диска, например в C:\zapret, и кириллица исчезнет из пути сама.

Красная строка: папка внутри OneDrive

Красная строка [X] Zapret is installed in a OneDrive folder означает, что папка сборки лежит внутри OneDrive. На Windows 10 и 11 с включённым OneDrive папки «Рабочий стол», «Документы» и «Изображения» физически находятся внутри C:\Users\<имя>\OneDrive\. Поэтому если вы распаковали сборку на рабочий стол, вы почти наверняка попали в OneDrive, даже не замечая этого.

Сборка считает это ошибкой, и не зря: синхронизация OneDrive подменяет файлы и держит их занятыми, а от этого страдают драйвер и списки обхода. Отключать OneDrive не нужно, достаточно вынести папку сборки из его зоны, в тот же C:\zapret.

Как выглядит правильная папка

Остальные строки Run Diagnostics разобраны отдельно, на странице о диагностике.

Переезд, когда служба уже установлена

Если вы уже ставили службу Windows, нельзя просто перенести папку: служба хранит старый путь и после переезда не поднимется. Порядок такой: Remove Services, перенести папку в новое место, затем Install Service заново. Подробнее о перестановке службы написано на странице о службе.

Окно может закрываться и по другим причинам, например нет прав администратора или испорчен PATH. Эти случаи разобраны на странице «окно закрывается сразу».

Частые вопросы

Распаковал в C:\Program Files\zapret, диагностика зелёная, а обход не работает

Диагностика проверяет только кириллицу и OneDrive, пробелы в пути она не замечает, а документация просит путь без пробелов. Перенесите папку в C:\zapret.

Можно оставить папку на рабочем столе?

Если рабочий стол не внутри OneDrive и имя пользователя латиницей, сборка не возразит. Но C:\zapret короче, и во всех инструкциях фигурирует именно она.

Перенёс папку, теперь служба не запускается

Служба помнит старый путь. Нажмите Remove Services, затем в новом месте Install Service — и служба поднимется.

У меня в пути и кириллица, и OneDrive, но всё работает. Переносить?

Можно не переносить, пока работает. Но при первом же сбое перенос будет первым, что попросят сделать, так что проще сделать это сейчас.

Дальше по теме