<?xml version="1.0"?>
<rss version="2.0"><channel><title>&#x41F;&#x43E;&#x441;&#x43B;&#x435;&#x434;&#x43D;&#x438;&#x435; &#x444;&#x430;&#x439;&#x43B;&#x44B;</title><link>https://vrcomm.ru/files/</link><description>&#x41F;&#x43E;&#x441;&#x43B;&#x435;&#x434;&#x43D;&#x438;&#x435; &#x444;&#x430;&#x439;&#x43B;&#x44B;</description><language>ru</language><item><title>Quas ADB Commander</title><link>https://vrcomm.ru/files/file/18-quas-adb-commander/</link><description><![CDATA[<p>
	Программа для управления файлами и каталогами между ПК и шлемом по ADB.<br>
	Использует двухпанельный интерфейс - в левой панели ПК, в правой - Андроид.<br>
	Управление осуществляется курсором и функциональными кнопками, как в любом двухпанельном менеджере.
</p>

<p style="text-align: center;">
	 
</p>

<p style="text-align: center;">
	 
</p>

<p style="text-align: center;">
	<img class="ipsImage ipsImage_thumbnailed" data-fileid="1821" data-ratio="81.71" data-unique="lgk0ntn3p" width="1110" alt="adbcm8.25main.jpg" data-src="https://vrcomm.ru/uploads/monthly_2026_07/adbcm8.25main.jpg.e1646031ff8e8213bbb31b8797290eee.jpg" src="https://vrcomm.ru/applications/core/interface/js/spacer.png">
</p>

<p>
	 
</p>

<p>
	<strong>Основное назначение:</strong><br>
	Отправка файлов на шлем или со шлема и установка приложений на шлем.
</p>

<p>
	 
</p>

<p>
	<strong>Требования:</strong><br>
	- Пакет adb рядом с программой<br>
	- Архиватор 7z (опционально, для работы с архивами)<br>
	- Утилита aapt2.exe (опционально)
</p>

<p>
	 
</p>

<p>
	<strong>Функциональные возможности файлового менеджера:</strong><br>
	- Копирование файлов/каталогов.<br>
	- Перемещение файлов/каталогов.<br>
	- Переименование файлов/каталогов.<br>
	- Удаление файлов/каталогов.<br>
	- Создание каталогов.<br>
	- Работа с архивами, форматы которых поддерживаются архиватором 7z, в том числе многотомными<br>
	- Редактирование текстовых файлов и скриптов встроенным или внешним редакторами.<br>
	- Поиск файлов с переходом к найденному выбранному файлу.<br>
	- Поддержка имен на кириллице.<br>
	- Быстрый доступ к каталогам Android/obb и Android/data отдельными кнопками.<br>
	- Логирование действий.<br>
	- Проверка подключения раз в 3 секунды<br>
	- Цветовая категоризация по типам файлов.<br>
	- Установка apk и obb.<br>
	- Запуск исполняемых файлов и скриптов.<br>
	- Просмотр медиа файлов вьюверами Windows по умолчанию.<br>
	- Контекстное меню с опциями копирования/вставки, установки, запуска или редактирования файлов.<br>
	- Сортировка файлов по размеру, имени или дате создания.
</p>

<p>
	 
</p>

<p>
	<strong>Функциональные возможности встроенного текстового редактора:</strong><br>
	- Автораспознование кодировки текста<br>
	- Ручной выбор и переключение кодировки<br>
	- Поиск по редактируемому файлу с мгновенной подсветкой результатов<br>
	- Отображение в заголовке несохраненных данных<br>
	- Запрос на сохранение при выходе из редактора, если есть несохраненные данные.<br>
	- Подсветка синтаксиса скриптов, логов и конфигов
</p>

<p>
	 
</p>

<p>
	<strong>Работа с архивами</strong> (опционально, при наличии архиватора 7z рядом с программой):<br>
	- Распаковка всех поддерживаемых 7z архивов: 7z, zip, rar, gz ,tar ,bz2 ,xz ,cab ,iso ,tgz ,tbz2.<br>
	- Работа с многотомными архивами: 7z: 001, 002, etc; WinRAR: part1, part2, etc, Zip: z01, z02, etc.<br>
	- Распаковка многотомных архивов в правильной последовательности при выборе для распаковке любой его части.<br>
	- Упаковка файлов в архив формата 7z.
</p>

<p>
	 
</p>

<p>
	<strong>Запуск:</strong><br>
	После распаковки зайти в каталог ADBCM и запустить файл ADBCM.exe
</p>

<p>
	 
</p>

<p>
	<strong>Содержимое архива:</strong><br>
	7z.dll<br>
	7z.exe<br>
	aapt2.exe<br>
	adb.exe<br>
	ADBCM.exe<br>
	adbcm.v8.26.ps1<br>
	AdbWinApi.dll<br>
	AdbWinUsbApi.dll<br>
	HELP:<br>
	adbfm-8.26.en.md<br>
	adbfm-8.26.ru.md<br>
	redame.txt
</p>

<p>
	 
</p>

<p>
	<strong>Как работать с многотомными архивами:</strong><br>
	1. ПКМ на любой части многотомного архива (001, 002, и т.д.) - Unpack<br>
	2. В окне выбора пути жмем верхнюю кнопку Unpack to PC<br>
	3. Ждем когда распакуются все тома. Процесс будет показываться в окне статуса.<br>
	4. Заходим в созданный после распаковки каталог с названием архива и расширением 7z<br>
	5. ПКМ на apk файле - Install apk.<br>
	6. Игра будет установлен на шлем, а если рядом с apk есть каталог obb, он будет скопирован на шлем.<br>
	 
</p>

<h3>
	<strong>Подробное описание и возможности:</strong>
</h3>

<p dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<span style="font-size:14px;"><strong>Двухпанельный файловый менеджер для Meta Quest / Android устройств через ADB</strong></span>
</p>

<p dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<span style="font-size:14px;">Часть инструментария <a href="https://github.com/Varsett/Quas" rel="external nofollow" style="background-color:rgba(0, 0, 0, 0); color:#0969da">QUAS</a>.</span>
</p>

<hr style="border:0px; font-size:16px; padding:0px; text-align:start">
<div dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<p dir="auto" style="border-bottom: 1.11111px solid rgba(209, 217, 224, 0.7); font-size: 1.5em;" tabindex="-1">
		<span style="font-size:14px;">Возможности</span>
	</p>
</div>

<ul dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<li>
		<p>
			<span style="font-size:14px;">Двухпанельный интерфейс: PC (слева) и Android (справа)</span>
		</p>
	</li>
	<li>
		<p>
			<span style="font-size:14px;">Просмотр, копирование, перемещение, переименование, удаление файлов на обоих устройствах</span>
		</p>
	</li>
	<li>
		<p>
			<span style="font-size:14px;">Встроенный редактор текста и скриптов с подсветкой синтаксиса</span>
		</p>
	</li>
	<li>
		<p>
			<span style="font-size:14px;">Поддержка архивов через 7z.exe (zip, 7z, rar, gz, tar, bz2, xz, cab, iso)</span>
		</p>
	</li>
	<li>
		<p>
			<span style="font-size:14px;">Поддержка многотомных архивов (.7z.001/.002, .part1.rar/.part2.rar, .z01/.z02, .001/.002)</span>
		</p>
	</li>
	<li>
		<p>
			<span style="font-size:14px;">Установка APK с автоматическим копированием OBB</span>
		</p>
	</li>
	<li>
		<p>
			<span style="font-size:14px;">Предпросмотр медиафайлов с Android (видео, фото, аудио)</span>
		</p>
	</li>
	<li>
		<p>
			<span style="font-size:14px;">Поиск с поддержкой подстановочных символов</span>
		</p>
	</li>
	<li>
		<p>
			<span style="font-size:14px;">Выделение файлов и пакетные операции</span>
		</p>
	</li>
	<li>
		<p>
			<span style="font-size:14px;">Тёмная тема с цветовой маркировкой типов файлов</span>
		</p>
	</li>
</ul>

<hr style="border:0px; font-size:16px; padding:0px; text-align:start">
<div dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<h2 dir="auto" style="border-bottom:1.11111px solid rgba(209, 217, 224, 0.7); font-size:1.5em" tabindex="-1">
		<span style="font-size:14px;">Требования</span>
	</h2>
</div>

<ul dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<li>
		<span style="font-size:14px;">Windows 10/11</span>
	</li>
	<li>
		<span style="font-size:14px;">PowerShell 5.1</span>
	</li>
	<li>
		<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">adb.exe</code> (Android Debug Bridge)</span>
	</li>
	<li>
		<span style="font-size:14px;">USB-отладка включена на устройстве Quest/Android</span>
	</li>
	<li>
		<span style="font-size:14px;"><strong>Опционально:</strong> <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">aapt2.exe</code> — определение имени пакета APK</span>
	</li>
	<li>
		<span style="font-size:14px;"><strong>Опционально:</strong> <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">7z.exe</code> + <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">7z.dll</code> — поддержка архивов</span>
	</li>
</ul>

<hr style="border:0px; font-size:16px; padding:0px; text-align:start">
<div dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<h2 dir="auto" style="border-bottom:1.11111px solid rgba(209, 217, 224, 0.7); font-size:1.5em" tabindex="-1">
		<span style="font-size:14px;">Установка</span>
	</h2>
</div>

<ol dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<li>
		<span style="font-size:14px;">Поместите <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">adbcm.ps1</code> в любую папку на ПК</span>
	</li>
	<li>
		<span style="font-size:14px;">Положите рядом <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">adb.exe</code>, <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">aapt2.exe</code>, <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">7z.exe</code>, <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">7z.dll</code></span>
		<ul dir="auto">
			<li>
				<span style="font-size:14px;">или укажите путь через параметр <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">-ToolsPath</code></span>
			</li>
			<li>
				<span style="font-size:14px;">или добавьте в <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">%PATH%</code></span>
			</li>
			<li>
				<span style="font-size:14px;">или задайте переменную среды <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">%myfiles%</code></span>
			</li>
		</ul>
	</li>
	<li>
		<span style="font-size:14px;">Подключите Quest/Android через USB с включённой USB-отладкой</span>
	</li>
</ol>

<hr style="border:0px; font-size:16px; padding:0px; text-align:start">
<div dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<h2 dir="auto" style="border-bottom:1.11111px solid rgba(209, 217, 224, 0.7); font-size:1.5em" tabindex="-1">
		<span style="font-size:14px;">Запуск</span>
	</h2>
</div>

<div dir="auto" style="background-color:#f6f8fa; color:#1f2328; font-size:16px; text-align:start">
	<pre style="background-color:#f6f8fa; border-radius:6px; color:#1f2328; font-size:13.6px; padding:16px"><span style="font-size:14px;"><span style="color:#cf222e">powershell</span> -ExecutionPolicy Bypass -File adbcm.ps1
</span></pre>
</div>

<p dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<span style="font-size:14px;">С параметрами:</span>
</p>

<div dir="auto" style="background-color:#f6f8fa; color:#1f2328; font-size:16px; text-align:start">
	<pre style="background-color:#f6f8fa; border-radius:6px; color:#1f2328; font-size:13.6px; padding:16px"><span style="font-size:14px;"><span style="color:#cf222e">powershell</span> -ExecutionPolicy Bypass -File adbcm.ps1 -ToolsPath <span style="color:#0a3069"><span style="color:#0a3069">"</span>C:\Tools<span style="color:#0a3069">"</span></span> -WorkDir <span style="color:#0a3069"><span style="color:#0a3069">"</span>D:\Temp<span style="color:#0a3069">"</span></span>
</span></pre>
</div>

<p dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<span style="font-size:14px;">Рекомендуемый bat-файл запуска:</span>
</p>

<div dir="auto" style="background-color:#f6f8fa; color:#1f2328; font-size:16px; text-align:start">
	<pre style="background-color:#f6f8fa; border-radius:6px; color:#1f2328; font-size:13.6px; padding:16px"><span style="font-size:14px;"><span style="color:#cf222e">set</span> <span style="color:#1f2328">toolspath</span><span style="color:#cf222e">=</span><span style="color:#953800">%~dp0</span>
<span style="color:#cf222e">set</span> <span style="color:#1f2328">workdir</span><span style="color:#cf222e">=</span><span style="color:#1f2328">%TEMP%</span>
<span style="color:#cf222e">powershell</span> -ExecutionPolicy Bypass -File <span style="color:#0a3069"><span style="color:#0a3069">"</span><span style="color:#0550ae">%~dp0</span>adbcm.ps1<span style="color:#0a3069">"</span></span> -ToolsPath <span style="color:#0a3069"><span style="color:#0a3069">"</span><span style="color:#1f2328">%toolspath%</span><span style="color:#0a3069">"</span></span> -WorkDir <span style="color:#0a3069"><span style="color:#0a3069">"</span><span style="color:#1f2328">%workdir%</span><span style="color:#0a3069">"</span></span>
</span></pre>
</div>

<hr style="border:0px; font-size:16px; padding:0px; text-align:start">
<div dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<h2 dir="auto" style="border-bottom:1.11111px solid rgba(209, 217, 224, 0.7); font-size:1.5em" tabindex="-1">
		<span style="font-size:14px;">Параметры запуска</span>
	</h2>
</div>

<table style="border-collapse:collapse; border-spacing:0px">
	<thead>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<th style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Параметр</span>
			</th>
			<th style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Описание</span>
			</th>
			<th style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">По умолчанию</span>
			</th>
		</tr>
	</thead>
	<tbody>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">-ToolsPath</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Папка с <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">adb.exe</code>, <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">aapt2.exe</code>, <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">7z.exe</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Папка скрипта</span>
			</td>
		</tr>
		<tr style="background-color:#f6f8fa; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">-WorkDir</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Временная папка для работы с архивами</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">%TEMP%</code></span>
			</td>
		</tr>
	</tbody>
</table>

<hr style="border:0px; font-size:16px; padding:0px; text-align:start">
<div dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<h2 dir="auto" style="border-bottom:1.11111px solid rgba(209, 217, 224, 0.7); font-size:1.5em" tabindex="-1">
		<span style="font-size:14px;">Горячие клавиши</span>
	</h2>
</div>

<div dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<h3 dir="auto" style="font-size:1.25em" tabindex="-1">
		<span style="font-size:14px;">Навигация</span>
	</h3>
</div>

<table style="border-collapse:collapse; border-spacing:0px">
	<thead>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<th style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Клавиша</span>
			</th>
			<th style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Действие</span>
			</th>
		</tr>
	</thead>
	<tbody>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">Tab</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Переключить активную панель</span>
			</td>
		</tr>
		<tr style="background-color:#f6f8fa; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">Enter</code> / двойной клик</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Открыть папку / Запустить файл / Войти в архив</span>
			</td>
		</tr>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">Space</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Отметить/снять отметку (жёлтая подсветка)</span>
			</td>
		</tr>
		<tr style="background-color:#f6f8fa; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">*</code> (Numpad)</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Отметить ВСЁ / Снять все отметки (переключение)</span>
			</td>
		</tr>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">Alt+X</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Выход</span>
			</td>
		</tr>
		<tr style="background-color:#f6f8fa; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">F9</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Перейти в Android/data</span>
			</td>
		</tr>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">F10</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Перейти в Android/obb</span>
			</td>
		</tr>
	</tbody>
</table>

<div dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<h3 dir="auto" style="font-size:1.25em" tabindex="-1">
		<span style="font-size:14px;">Файловые операции</span>
	</h3>
</div>

<table style="border-collapse:collapse; border-spacing:0px">
	<thead>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<th style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Клавиша</span>
			</th>
			<th style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Действие</span>
			</th>
		</tr>
	</thead>
	<tbody>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">F2</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Переименовать</span>
			</td>
		</tr>
		<tr style="background-color:#f6f8fa; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">F3</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Поиск (поддерживается <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">*</code>)</span>
			</td>
		</tr>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">F4</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Открыть во встроенном редакторе</span>
			</td>
		</tr>
		<tr style="background-color:#f6f8fa; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">F5</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Копировать на противоположную панель / Извлечь из архива</span>
			</td>
		</tr>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">F6</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Переместить / Переименовать</span>
			</td>
		</tr>
		<tr style="background-color:#f6f8fa; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">F7</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Создать новую папку</span>
			</td>
		</tr>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">F8</code> / <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">Delete</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Удалить выделенные элементы</span>
			</td>
		</tr>
	</tbody>
</table>

<div dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<h3 dir="auto" style="font-size:1.25em" tabindex="-1">
		<span style="font-size:14px;">Редактор</span>
	</h3>
</div>

<table style="border-collapse:collapse; border-spacing:0px">
	<thead>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<th style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Клавиша</span>
			</th>
			<th style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Действие</span>
			</th>
		</tr>
	</thead>
	<tbody>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">Ctrl+S</code> / <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">F2</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Сохранить файл</span>
			</td>
		</tr>
		<tr style="background-color:#f6f8fa; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">Esc</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Закрыть (спрашивает при несохранённых изменениях)</span>
			</td>
		</tr>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Кнопка Wrap</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Переключить перенос строк</span>
			</td>
		</tr>
	</tbody>
</table>

<hr style="border:0px; font-size:16px; padding:0px; text-align:start">
<div dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<h2 dir="auto" style="border-bottom:1.11111px solid rgba(209, 217, 224, 0.7); font-size:1.5em" tabindex="-1">
		<span style="font-size:14px;">Контекстное меню (правая кнопка мыши)</span>
	</h2>
</div>

<table style="border-collapse:collapse; border-spacing:0px">
	<thead>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<th style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Пункт</span>
			</th>
			<th style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Описание</span>
			</th>
		</tr>
	</thead>
	<tbody>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Run</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Запустить файл (только PC)</span>
			</td>
		</tr>
		<tr style="background-color:#f6f8fa; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Edit (built-in)</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Открыть во встроенном редакторе</span>
			</td>
		</tr>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Edit (pull-edit-push)</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Скачать с Android, отредактировать, загрузить обратно</span>
			</td>
		</tr>
		<tr style="background-color:#f6f8fa; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Open with default</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Открыть системным приложением</span>
			</td>
		</tr>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Install APK</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Установить APK + автокопирование OBB</span>
			</td>
		</tr>
		<tr style="background-color:#f6f8fa; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Copy</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Отметить + скопировать в буфер обмена</span>
			</td>
		</tr>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Paste</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Вставить (PC↔Android, PC→PC, Android→Android)</span>
			</td>
		</tr>
		<tr style="background-color:#f6f8fa; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Unpack archive</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Распаковать архив на PC или Android</span>
			</td>
		</tr>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Pack selected</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Запаковать отмеченное в <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.7z</code></span>
			</td>
		</tr>
	</tbody>
</table>

<hr style="border:0px; font-size:16px; padding:0px; text-align:start">
<div dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<h2 dir="auto" style="border-bottom:1.11111px solid rgba(209, 217, 224, 0.7); font-size:1.5em" tabindex="-1">
		<span style="font-size:14px;">Работа с архивами</span>
	</h2>
</div>

<p dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<span style="font-size:14px;">Архивы открываются двойным кликом или Enter — отображаются как виртуальные папки.</span>
</p>

<div dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<h3 dir="auto" style="font-size:1.25em" tabindex="-1">
		<span style="font-size:14px;">Внутри архива</span>
	</h3>
</div>

<table style="border-collapse:collapse; border-spacing:0px">
	<thead>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<th style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Действие</span>
			</th>
			<th style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Результат</span>
			</th>
		</tr>
	</thead>
	<tbody>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">F4</code> на файле</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Открыть текстовый/скриптовый файл в редакторе</span>
			</td>
		</tr>
		<tr style="background-color:#f6f8fa; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">F5</code> (отмечены файлы)</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Извлечь файлы без структуры папок</span>
			</td>
		</tr>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">F5</code> (отмечена папка)</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Извлечь папку вместе с содержимым</span>
			</td>
		</tr>
		<tr style="background-color:#f6f8fa; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">*</code> затем <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">F5</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Отметить всё + извлечь всё</span>
			</td>
		</tr>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">[Close Archive]</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Выйти из архива или подняться на уровень выше</span>
			</td>
		</tr>
	</tbody>
</table>

<div dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<h3 dir="auto" style="font-size:1.25em" tabindex="-1">
		<span style="font-size:14px;">Контекстное меню на файле архива</span>
	</h3>
</div>

<ul dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<li>
		<span style="font-size:14px;"><strong>Unpack archive</strong> — распаковать ВСЁ в указанную папку PC (путь редактируется) или в текущую папку Android (создаётся подпапка с именем архива)</span>
	</li>
	<li>
		<span style="font-size:14px;"><strong>Pack selected</strong> — запаковать отмеченные элементы в <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.7z</code> в текущей папке</span>
	</li>
</ul>

<div dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<h3 dir="auto" style="font-size:1.25em" tabindex="-1">
		<span style="font-size:14px;">Поддерживаемые форматы</span>
	</h3>
</div>

<p dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">zip 7z rar gz tar bz2 xz cab iso tgz</code></span>
</p>

<hr style="border:0px; font-size:16px; padding:0px; text-align:start">
<div dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<h2 dir="auto" style="border-bottom:1.11111px solid rgba(209, 217, 224, 0.7); font-size:1.5em" tabindex="-1">
		<span style="font-size:14px;">Многотомные архивы</span>
	</h2>
</div>

<p dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<span style="font-size:14px;">Многотомные (разделённые) архивы поддерживаются полностью и раскрашиваются так же как обычные.</span>
</p>

<table style="border-collapse:collapse; border-spacing:0px">
	<thead>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<th style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Формат</span>
			</th>
			<th style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Части</span>
			</th>
			<th style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Первая часть</span>
			</th>
		</tr>
	</thead>
	<tbody>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">7-Zip</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.7z.001</code>, <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.7z.002</code>, ...</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.7z.001</code></span>
			</td>
		</tr>
		<tr style="background-color:#f6f8fa; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">WinRAR</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.part1.rar</code>, <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.part2.rar</code>, ...</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.part1.rar</code></span>
			</td>
		</tr>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">ZIP split</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.z01</code>, <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.z02</code>, ... + <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.zip</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.zip</code></span>
			</td>
		</tr>
		<tr style="background-color:#f6f8fa; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Generic</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.001</code>, <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.002</code>, ...</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.001</code></span>
			</td>
		</tr>
	</tbody>
</table>

<p dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<span style="font-size:14px;"><strong>Ключевая особенность:</strong> правый клик или двойной клик на <strong>ЛЮБОЙ</strong> части многотомного архива — менеджер автоматически находит и использует первую часть для распаковки. Не нужно вручную искать часть 1.</span>
</p>

<hr style="border:0px; font-size:16px; padding:0px; text-align:start">
<div dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<h2 dir="auto" style="border-bottom:1.11111px solid rgba(209, 217, 224, 0.7); font-size:1.5em" tabindex="-1">
		<span style="font-size:14px;">Цвета файлов</span>
	</h2>
</div>

<table style="border-collapse:collapse; border-spacing:0px">
	<thead>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<th style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Цвет</span>
			</th>
			<th style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Тип</span>
			</th>
		</tr>
	</thead>
	<tbody>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Голубой (Cyan)</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Исполняемые (.exe .bat .ps1 .cmd ...)</span>
			</td>
		</tr>
		<tr style="background-color:#f6f8fa; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Зелёный</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Текстовые (.txt .log .cfg .ini ...)</span>
			</td>
		</tr>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Синий</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Медиа (.mp4 .mkv .jpg .mp3 ...)</span>
			</td>
		</tr>
		<tr style="background-color:#f6f8fa; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Фиолетовый</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">APK пакеты</span>
			</td>
		</tr>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Ярко-зелёный</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Архивы (.zip .7z .rar ...) и части многотомных</span>
			</td>
		</tr>
		<tr style="background-color:#f6f8fa; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Белый</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Папки</span>
			</td>
		</tr>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Жёлтый</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Отмеченные элементы</span>
			</td>
		</tr>
		<tr style="background-color:#f6f8fa; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Серый</span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Остальные файлы</span>
			</td>
		</tr>
	</tbody>
</table>

<hr style="border:0px; font-size:16px; padding:0px; text-align:start">
<div dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<h2 dir="auto" style="border-bottom:1.11111px solid rgba(209, 217, 224, 0.7); font-size:1.5em" tabindex="-1">
		<span style="font-size:14px;">Подсветка синтаксиса (редактор)</span>
	</h2>
</div>

<table style="border-collapse:collapse; border-spacing:0px">
	<thead>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<th style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Формат</span>
			</th>
			<th style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Что подсвечивается</span>
			</th>
		</tr>
	</thead>
	<tbody>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.ps1</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Ключевые слова, <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">$переменные</code>, строки, <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">#комментарии</code>, операторы</span>
			</td>
		</tr>
		<tr style="background-color:#f6f8fa; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.bat</code> <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.cmd</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">rem</code>/<code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">::</code>, <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">echo</code>, <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">%переменные%</code>, ключевые слова</span>
			</td>
		</tr>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.sh</code> <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.bash</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">Аналогично ps1</span>
			</td>
		</tr>
		<tr style="background-color:#f6f8fa; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.ini</code> <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.cfg</code> <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.conf</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">[секции]</code>, <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">ключ=значение</code>, <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">;комментарии</code></span>
			</td>
		</tr>
		<tr style="background-color:#ffffff; border-top:1.11111px solid rgba(209, 217, 224, 0.7)">
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;"><code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.log</code> <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">.nfo</code></span>
			</td>
			<td style="border:1.11111px solid #d1d9e0; padding:6px 13px">
				<span style="font-size:14px;">ERROR (красный), WARN (оранжевый), INFO (зелёный), DEBUG (серый)</span>
			</td>
		</tr>
	</tbody>
</table>

<hr style="border:0px; font-size:16px; padding:0px; text-align:start">
<div dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<h2 dir="auto" style="border-bottom:1.11111px solid rgba(209, 217, 224, 0.7); font-size:1.5em" tabindex="-1">
		<span style="font-size:14px;">Предпросмотр медиа (Android)</span>
	</h2>
</div>

<p dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<span style="font-size:14px;">Двойной клик на видео/изображении/аудио в панели Android — файл скачивается во <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">%TEMP%</code> и открывается системным приложением по умолчанию. Файлы размером более <strong>500 МБ</strong> требуют подтверждения.</span>
</p>

<hr style="border:0px; font-size:16px; padding:0px; text-align:start">
<div dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<h2 dir="auto" style="border-bottom:1.11111px solid rgba(209, 217, 224, 0.7); font-size:1.5em" tabindex="-1">
		<span style="font-size:14px;">Примечания</span>
	</h2>
</div>

<ul dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<li>
		<span style="font-size:14px;">Пути с пробелами и спецсимволами <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">[]</code> поддерживаются полностью</span>
	</li>
	<li>
		<span style="font-size:14px;">Кириллические имена файлов в архивах поддерживаются</span>
	</li>
	<li>
		<span style="font-size:14px;">Статус подключения ADB (с серийным номером) обновляется каждые 3 секунды</span>
	</li>
	<li>
		<span style="font-size:14px;">Копирование в той же панели: PC→PC через <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">Copy-Item</code>, Android→Android через <code style="background-color:rgba(129, 139, 152, 0.12); border-radius:6px; font-size:13.6px; padding:0.2em 0.4em">adb shell cp</code></span>
	</li>
</ul>

<hr style="border:0px; font-size:16px; padding:0px; text-align:start">
<div dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<h2 dir="auto" style="border-bottom:1.11111px solid rgba(209, 217, 224, 0.7); font-size:1.5em" tabindex="-1">
		<span style="font-size:14px;">Ссылки</span>
	</h2>
</div>

<ul dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<li>
		<span style="font-size:14px;"><strong>GitHub / Документация:</strong> <a href="https://github.com/Varsett/QuasADBCommander" rel="external nofollow" style="background-color:rgba(0, 0, 0, 0); color:#0969da">https://github.com/Varsett/QuasADBCommander</a></span>
	</li>
	<li>
		<span style="font-size:14px;"><strong>Скачать ADB Tools:</strong> <a href="https://developer.android.com/tools/releases/platform-tools" rel="external nofollow" style="background-color:rgba(0, 0, 0, 0); color:#0969da">https://developer.android.com/tools/releases/platform-tools</a></span>
	</li>
	<li>
		<span style="font-size:14px;"><strong>Скачать 7-Zip:</strong> <a href="https://www.7-zip.org/download.html" rel="external nofollow" style="background-color:rgba(0, 0, 0, 0); color:#0969da">https://www.7-zip.org/download.html</a></span>
	</li>
</ul>

<hr style="border:0px; font-size:16px; padding:0px; text-align:start">
<p dir="auto" style="background-color:#ffffff; color:#1f2328; font-size:16px; text-align:start">
	<span style="font-size:14px;"><em>(c) 2026 Varset — Часть инструментария QUAS</em></span>
</p>

<p>
	 
</p>
]]></description><guid isPermaLink="false">18</guid><pubDate>Wed, 29 Jul 2026 11:44:16 +0000</pubDate></item><item><title>Quas Safe Unified</title><link>https://vrcomm.ru/files/file/17-quas-safe-unified/</link><description><![CDATA[<p align="center" style="text-align:center">
	<b><span style="font-size:22.0pt">Quas Safe Unified</span></b>
</p>

<p>
	 
</p>

<h3>
	<span style="font-size:18px;"><u><strong>Описание</strong></u></span>
</h3>

<p>
	Программа разработана для шифрования кода, учетных записей, ссылок и т.д.. Она также может быть интегрирована в любой код, поддерживающий выполнение скриптов PowerShell, т.к. написана на нем.
</p>

<p>
	После дешифровки содержимое может быть передано в основной код в качестве параметров или значений (например, переменных) или непосредственно выполнено самой программой Quas Safe..
</p>

<p>
	Для шифрования используются алгоритмы <strong>AES-256</strong> и <strong>PBKDF2</strong>, весь код сохраняется в ключ, который может быть записан в реестр или файл. Зашифрованные ключи не содержат паролей и не поддаются взлому, поэтому их спокойно можно публиковать или пересылать в открытом виде. Для дополнительной защита от взлома через Rainbow Tables программа использует “соль”. Не пренебрегайте этой возможностью.
</p>

<p>
	 
</p>

<p>
	Программа работает в трех режимах: <strong>шифрование</strong>, <strong>дешифрование</strong>, и <strong>Менеджер ключей</strong>. Она поддерживает множество параметров командной строки, позволяющие автоматизировать режимы шифрования и дешифровки. При запуске без параметров запустится графический Менеджер ключей, в котором можно управлять существующими ключами или создать новые.
</p>

<p>
	 
</p>

<p>
	<strong><span style="color:#e74c3c;">ВАЖНО: пароли нигде не хранятся и если вы их забудете, восстановить информацию будет невозможно!</span></strong>
</p>

<p>
	 
</p>

<p>
	<span style="font-size:18px;"><b><u>Работа с программой.</u></b></span>
</p>

<p>
	 
</p>

<p>
	<span style="color:#8e44ad;"><b>Основное окно.</b></span>
</p>

<p>
	 
</p>

<p>
	Запускаем скрипт <strong>QuasSafe.ps1</strong>, откроется окно программы.
</p>

<p>
	<img alt="2026-04-22_171454.jpg" class="ipsImage ipsImage_thumbnailed" data-fileid="1788" data-ratio="72.18" data-unique="rhiqps1b3" style="height: auto;" width="586" data-src="https://vrcomm.ru/uploads/monthly_2026_04/2026-04-22_171454.jpg.99a6525f3bbbe62575aecfa2770938ac.jpg" src="https://vrcomm.ru/applications/core/interface/js/spacer.png">
</p>

<p>
	 
</p>

<p>
	Слева поле со списком ключей, под ним - описание ключа (если оно есть). Это поле <strong>Description </strong>(см. дальше) и в нем можно указать для чего используется ключ. Это не секретная информация.
</p>

<p>
	Справа кнопки:
</p>

<p>
	<b>Theme</b> - переключение тем, светлая/темная.
</p>

<p>
	<strong>?</strong> - краткое описание и помощь по работе с программой.
</p>

<p>
	<b>Add New Key</b> - создать новый ключ.
</p>

<p>
	<b>Delete Key</b> - удаляет ключ под курсором. Потребуется подтверждение удаления.
</p>

<p>
	<b>Export Key</b> - экспортировать из реестра в файл vault.txt ключ под курсором.
</p>

<p>
	<b>Export All Keys</b> - экспортировать все ключи из реестра в файл vault.txt
</p>

<p>
	<b>Import Key</b> - импортировать в реестр все ключи из файла vault.txt
</p>

<p>
	<b>View / Edit Key</b> - просмотреть или отредактировать ключ под курсором.
</p>

<p>
	<b>Run Decryptor</b> - запустить процедуру дешифровки ключа для проверки его работы. Будет запрошен пароль.
</p>

<p>
	 
</p>

<p>
	<span style="color:#8e44ad;"><b>Создание ключа</b></span>
</p>

<p>
	 
</p>

<p>
	Кнопка <b>Add New Key</b> откроет окно <strong>Create Key</strong> с несколькими полями и параметрами.
</p>

<p>
	 
</p>

<p>
	<strong>Name </strong>- Имя или идентификатор ключа. Под этим именем ключ сохраняется в реестре и отображается в списке ключей. Это обязательный параметр.
</p>

<p>
	<strong>Payload </strong>- код, учетные данные, ссылки и любой другой текст, который будет зашифрован и выполнен (если это скрипт и установлена опция выполнения, о которой чуть ниже) или открыт программой по умолчанию. Текст можно проматывать колесом мыши или вертикальным скролл-баром. Это обязательный параметр.
</p>

<p>
	<strong>Output filename</strong> - название файла, в который будет сохранено содержимое Payload после расшифровки.Это обязательный параметр
</p>

<p>
	<strong>Description</strong> - описание ключа. Здесь можно указать для чего используется ключ.
</p>

<p>
	<strong>Salt</strong> - дополнительный параметр шифрования “соль”, предназначен для защиты от взлома с помощью Rainbow Tables. Если не прописан, записывается как Default
</p>

<p>
	<strong>Hint</strong> - подсказка пароля. Здесь может быть фраза или намек на пароль, которые будут понятны только автору ключа  и которые помогут вспомнить пароль, если он забудется.
</p>

<p>
	<strong>Password </strong>- собственно пароль и его подтверждение
</p>

<p>
	<strong>Save to reg</strong> - ключ будет сохранен в реестр в раздел <strong>HKCU\Software\Quas\Credentials</strong>
</p>

<p>
	<strong>Save to file</strong> - ключ будет сохранен в файл <strong>vault.txt</strong>
</p>

<p>
	<strong>After decrypt (Run file) </strong>- если установлена галка, файл будет выполнен или открыт после дешифровки.
</p>

<p>
	Кнопка Save сохраняет созданный ключ.
</p>

<p>
	 
</p>

<p>
	<span style="color:#8e44ad;"><strong>Пример создания ключа:</strong></span>
</p>

<p>
	<img alt="qsu-adk1.jpg" class="ipsImage ipsImage_thumbnailed" data-fileid="1789" data-ratio="161.24" data-unique="qcs2vgy31" style="height: auto;" width="436" data-src="https://vrcomm.ru/uploads/monthly_2026_04/qsu-adk1.jpg.bb1f3e7c85dd5fcbb2d461634423e623.jpg" src="https://vrcomm.ru/applications/core/interface/js/spacer.png">
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	После нажатия на кнопку <strong>Save Data</strong> будет создан ключ <strong>TextNote</strong>, который после дешифровки автоматически откроет текстовый файл <strong>note.txt</strong> с надписью “<strong>Hello World!</strong>”
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	<span style="color:#8e44ad;"><strong>Еще один пример, как использовать учетные данные</strong></span>
</p>

<p>
	<img alt="2026-04-22_171541.jpg" class="ipsImage ipsImage_thumbnailed" data-fileid="1790" data-ratio="161.24" data-unique="dmix5wzr5" style="height: auto;" width="436" data-src="https://vrcomm.ru/uploads/monthly_2026_04/2026-04-22_171541.jpg.03b51908c1312126013231c0d0506633.jpg" src="https://vrcomm.ru/applications/core/interface/js/spacer.png">
</p>

<p>
	 
</p>

<p>
	 
</p>

<p>
	После расшифровки ключа будет создан и выполнен файл <strong>set_creds.bat</strong>, который пропишет переменные для подключения к <strong>Webdav</strong> и скачивания файла <strong>myfile.txt</strong> с помощью <strong>curl</strong>.
</p>

<p>
	Использовать файл <strong>set_creds.bat</strong> следует вызовом из подпрограммы, тогда переменные передадутся в основной код. Вот пример такого вызова на <strong>cmd</strong>:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_34_9" style=""><span class="pln">setlocal

:_Main
rem Вызываем подпрограмму расшифровки, которая вернет нам переменные
call :_Decryption
curl -Lko -u  %curllogin%:%curlpass% myfile.txt %curllink%
exit

:_Decryption
rem Запуск QuaSafe для дешифровки ключа CurlWebdav
powershell -NoProfile -ExecutionPolicy Bypass -File "QuasSafe3.9.3.ps1" -Decrypt -keyName "CurlWebdav"
if %errorlevel% equ 0 (
rem Если ошибок дешифровки нет и файл создался, выполняем его, затем удаляем
if exist "set_creds.bat" (
call "set_creds.bat"
del /f /q "set_creds.bat"
)
) else (
rem Если пароль трижды неправильный, выходим из программы
echo Access Denied.
pause
exit
)
exit /b</span></pre>

<p>
	 
</p>

<p>
	После запуска этого кода будет вызвана подпрограмма дешифровки, которая попросит ввести пароль от ключа <strong>CurlWebdav</strong>. Если пароль будет трижды введен неверно, всплывет сообщение <strong>Access Denied</strong> и программа будет закрыта.
</p>

<p>
	После ввода правильного пароля будет создан и выполнен файл <strong>set_creds.bat</strong>, который в переменные <strong>curllogin, curlpass</strong> запишет учетные данные, а в <strong>curllink</strong> ссылку, и затем эти переменные будут переданы утилите <strong>curl</strong>, которая по этим данным скачает файл <strong>myfile.txt</strong>
</p>

<p>
	В данном случае важно, чтобы файл<strong> set_creds.bat</strong> выполнялся в отдельной подпрограмме (<strong>call “set_creds.bat”</strong>), иначе переменные не будут переданы в основной код
</p>

<p>
	 
</p>

<p>
	<span style="color:#8e44ad;"><b>Работа с командной строкой.</b></span>
</p>

<p>
	 
</p>

<p>
	В командной строке поддерживаются следующие параметры:
</p>

<p>
	 
</p>

<p>
	   <span lang="EN-US"><strong>-Encrypt</strong>       : Режим шифрования. Создает или обновляет ключ.</span>
</p>

<p>
	<span lang="EN-US">  <strong> -Decrypt</strong>       : Режим дешифрования. Требуются параметры -keyName (из реестра) или -payload.</span>
</p>

<p>
	<span lang="EN-US">  <strong> -ToReg </strong>         : Флаг: Сохранить ключ в реестр (<strong>HKCU:\Software\Quas\Credentials</strong>).</span>
</p>

<p>
	<span lang="EN-US">  <strong> -ToFile</strong>          : Флаг: сохраняет или добавляет ключи из реестра в файл '<strong>vault.txt'</strong>.</span>
</p>

<p>
	<span lang="EN-US">  <strong> -keyName</strong>   : Уникальное имя/ID ключа в реестре.</span>
</p>

<p>
	<span lang="EN-US">  <strong> -payload      </strong>: Данные для шифрования. Если содержат точку с запятой, парсятся как '<strong>Salt;Hint;Desc;Cipher;Outfile;RunFlas</strong>'.</span>
</p>

<p>
	<span lang="EN-US">   <strong>-outFile </strong>       : Имя файла в котором будут сохранены расшифрованные данные (например, creds.bat)</span>
</p>

<p>
	<span lang="EN-US">   <strong>-pass </strong>            : Пароль для использхования в командной строке (иначе программа попросит его ввести)</span>
</p>

<p>
	<span lang="EN-US">   <strong>-saltText</strong>       : Параметр усложняет взлом По умолчанию это '<strong>Default</strong>'.</span>
</p>

<p>
	<span lang="EN-US">  <strong> -hint</strong>              : Подсказка пароля.</span>
</p>

<p>
	<span lang="EN-US">  <strong> -Run</strong>              : Флаг: запуск выходного файла после дешифровки. Переопределяет флаг в настройках.</span>
</p>

<p>
	 
</p>

<p>
	<strong><span lang="EN-US">Примеры запуска из командной строки:</span></strong>
</p>

<p>
	<span lang="EN-US">          </span>
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5122_26" style=""><span class="pln">    .\QuasSafe.ps1 -Encrypt -keyName "MyGoogleCreds" -saltText "MySalt" -hint "Year"</span></pre>

<p>
	<span lang="EN-US">    </span>Шифрование данных (из source.txt или ввода вручную) и сохранение в реестр под именем "Koofr".
</p>

<p>
	 
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_34_15" style=""><span class="pln">    .\QuasSafe.ps1 -Encrypt -keyName "Test" -saltText "MySalt" -hint "Birth year" -payload "set login=admin &amp; set pass=123"</span></pre>

<p>
	<span lang="EN-US">    </span>Шифрование данных с указанием всех параметров в строке запуска скрипта
</p>

<p>
	 
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_34_17" style=""><span class="pln">    .\QuasSafe.ps1 -Encrypt -ToReg -ToFile -DelSource -keyName "MyService" -saltText "Salt123"</span></pre>

<p>
	<span lang="EN-US">    </span>Шифрует данные из 'source.txt', сохраняет в реестр и файл, затем удаляет исходник. Полная автоматизация.
</p>

<p>
	 
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_34_19" style=""><span class="pln">    .\QuasSafe.ps1 -Decrypt -payload "MySalt;MyHint;Base64Data..."</span></pre>

<p>
	<span lang="EN-US">    </span>(Сценарий А) Расшифровка строки, содержащей все компоненты.
</p>

<p>
	 
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_34_21" style=""><span class="pln">    .\QuasSafe.ps1 -Decrypt -payload "Base64Data..." -saltText "MySalt" -hint "MyHint"</span></pre>

<p>
	<span lang="EN-US">    </span>(Сценарий Б) Расшифровка, где каждый компонент передан отдельным параметром.
</p>

<p>
	 
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_34_23" style=""><span class="pln">    .\QuasSafe.ps1 -Decrypt -keyName "MyKey"</span></pre>

<p>
	<span lang="EN-US">    </span>(Сценарий В) Поиск и расшифровка данных в реестре по имени "MyKey".
</p>

<p>
	 
</p>

<p>
	<span style="color:#8e44ad;"><strong>Дополнение:</strong></span>
</p>

<p>
	Ключи в файле vault.txt сохраняются в таком формате:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_34_11" style=""><span class="pln">KeyNam = Salt;Hint;Description;Payload;Outfile;Run_flag</span></pre>

<p>
	В реестре сохраняются точно так же.
</p>

<p>
	 
</p>

<h3>
	<u>Все это очень красиво и выглядит солидно, но как всем  этим пользоваться?</u>
</h3>

<p>
	Сейчас мы подробно разберем пример кода, который чуть выше.<br>
	Итак, задача в следующем: нам нужно скачать какой-то файл с облака, но ссылку, логин и пароль светить нельзя, а вот зашифрованный ключ вполне можно публиковать.<br>
	Поэтому все секретные данные мы в него и положим.
</p>

<p>
	 
</p>

<p>
	<u><span style="color:#8e44ad;"><strong>Этап первый: Постановка задачи.</strong></span></u>
</p>

<p>
	<br>
	Для начала следует решить, какие данные будем туда вносить и как их обрабатывать после расшифровки.
</p>

<p>
	Для скачивания файла нужна такая строка:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5122_5" style=""><span class="pln">curl -Lko -u  mylogin:mypassword myfile.txt mylink</span></pre>

<p>
	<br>
	Здесь:<br>
	<strong>mylogin </strong>- логин для авторизации в облако<br>
	<strong>mypassword </strong>- пароль для авторизации туда же.<br>
	<strong>myfile.txt</strong> - файл, который будем скачивать<br>
	<strong>mylink </strong>- ссылка для скачивания файла.
</p>

<p>
	Назначим переменные для всех этих параметров, кроме <strong>myfile.txt</strong>:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5122_22" style=""><span class="pln">set "curllogin=mylogin"
set "curlpass=mypassword"
set "mylink=https://example.com/webdav/Folder/Files/myfile.txt"</span></pre>

<p>
	<br>
	Собственно, вот эти три строчки и представляют собой содержимое файла <strong>set_creds.bat</strong>, который будет выполнен после расшифровки (если вы установите флаг <strong>RunFile</strong>)<br>
	В результате его выполнения трем переменным будут присвоены значения, которы нам и нужны. Затем мы передадим эти значения основному коду, в котором будет выполнена строка с уже назначенными переменными после выполнения <strong>set_creds.bat:</strong>
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5122_9" style=""><span class="pln">curl -Lko -u  %curllogin%:%curlpass% myfile.txt %curllink%</span></pre>

<p>
	<br>
	и наш файл преспокойно скачается.
</p>

<p>
	Таким образом, основной код у нас будет состоять из трех частей:
</p>

<ol>
	<li>
		Вызов подпрограммы расшифровки ключа
	</li>
	<li>
		Выполнение программы после расшифровки
	</li>
	<li>
		Вызов подпрограммы действия (в данном случае - скачивания)
	</li>
</ol>

<p>
	 
</p>

<h4>
	<u><span style="color:#8e44ad;">Этап второй: Создание ключа.</span></u>
</h4>

<p>
	Здесь совсем все просто: исполняемый файл<strong> set_creds.bat</strong> у нас практически сформирован, и его мы помещаем в поле <strong>Payload</strong>.<br>
	Заполняем остальные поля: <strong>N</strong><b>ame</b>, <strong>Output filename</strong>, <b>Description</b> (если нужно), <strong>Salt</strong>, <strong>Hint </strong> и <b>Password</b>.
</p>

<p>
	<img alt="mysecretkey.jpg" class="ipsImage ipsImage_thumbnailed" data-fileid="1796" data-ratio="161.24" data-unique="c2bntaq7x" style="height: auto;" width="436" data-src="https://vrcomm.ru/uploads/monthly_2026_04/mysecretkey.jpg.7c49cd39bca352cd7bfcb7b6cd5c6e7f.jpg" src="https://vrcomm.ru/applications/core/interface/js/spacer.png">
</p>

<p>
	 
</p>

<p>
	Примечание: если вы назначите свой параметр <strong>Salt</strong>, его нужно будет добавить в строку запуска дешифратора, но об этом далее.
</p>

<p>
	Пароль в этом примере - <strong>mypassword</strong>, так же, как имя его переменной.
</p>

<p>
	Итак, поля заполнены, отмечаем галку на поле <strong>Run File</strong>, переключаем на <strong>Save to file</strong> (так будет проще извлечь ключ) и жмем кнопку <strong>Save Data</strong>.<br>
	Рядом появится файл <strong>vault.txt</strong> примерно такого вида:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5122_11" style=""><span class="pln">MySecretKey = MySalt;MyHint;Описание ключа;iPaVllcKST2ZngcntNlxZEWgqyR6lit7ET77ILS2qttol9IssNKB5dX16u6O+hUJI5ckN/YyB9XXa4yJdStzrsdyMVR9CETl9dWfewrc4cddxpImKPooktIJfN6WhKIfgqd1207QQcXyNrQIBDg3Jw==;set_creds.bat;1</span></pre>

<p>
	Все параметры готовы, ключ создан, можно формировать основной код.
</p>

<h4>
	<u><span style="color:#8e44ad;">Этап третий: Подпрограмма дешифровки.</span></u>
</h4>

<p>
	Здесь мы уже вплотную подходим к использованию приложения <strong>QuasSafe </strong>в командной строке. Все параметры есть в справке и в этой статье, нам понадобятся только некоторые из них.
</p>

<p>
	Строка запуска дешифровки будет выглядеть так:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5122_13" style=""><span class="pln">powershell -NoProfile -ExecutionPolicy Bypass -File "QuasSafe.3.9.4.ps1" -Decrypt -payload "%payload%" -outfile "set_creds.bat" -hint "MyHint" -saltText "MySalt"</span></pre>

<p>
	<br>
	Здесь прописаны все параметры и их значения, которые мы использовали при создании ключа.<br>
	Как можно заметить, в строке используется переменная <strong>%payload%</strong> - это и есть наш ранее созданный ключ.<br>
	Чтобы присвоить этой переменной наш ключ, перед запуском дешифровки назначьте его переменной payload, вот так:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5122_15" style=""><span class="pln">set "payload=iPaVllcKST2ZngcntNlxZEWgqyR6lit7ET77ILS2qttol9IssNKB5dX16u6O+hUJI5ckN/YyB9XXa4yJdStzrsdyMVR9CETl9dWfewrc4cddxpImKPooktIJfN6WhKIfgqd1207QQcXyNrQIBDg3Jw=="</span></pre>

<p>
	<u>Небольшое отступление:</u><br>
	Существуют два режима ввода параметров при дешифровке: параметры из реестра и непосредственно в строке запуска.<br>
	В данном случае мы используем строку с набором параметров.
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5122_20" style=""><span class="pln">rem Подпрограмма дешифровки, состояит из двух строк - назначение ключа и запуск QuasSafe, который попросит нас ввести пароль.
rem После ввода пароля файл set_creds будет расшифрован.
set "payload=iPaVllcKST2ZngcntNlxZEWgqyR6lit7ET77ILS2qttol9IssNKB5dX16u6O+hUJI5ckN/YyB9XXa4yJdStzrsdyMVR9CETl9dWfewrc4cddxpImKPooktIJfN6WhKIfgqd1207QQcXyNrQIBDg3Jw=="
powershell -NoProfile -ExecutionPolicy Bypass -File "QuasSafe.3.9.4.ps1" -Decrypt -payload "%payload%" -outfile "set_creds.bat" -hint "MyHint" -saltText "MySalt"</span></pre>

<p>
	<u>Еще одно отступление:</u><br>
	Флаг <strong>RunFile</strong> у нас записывается отдельно и он служит маркером для <strong>QuasSafe </strong>- запускать на выполнение после дешифровки или нет.<br>
	Поскольку мы в данном случае не используем параметр запуска <strong>Run</strong>, подпрограмму <strong>set_creds.bat</strong> можно запускать отдельным вызовом.<br>
	Или просто добавить параметр <strong>-Run</strong> к строке дешифровки. Я специально не добавлял этот параметр, чтобы показать как вызывать и запускать подпрограмму <strong>set_creds.bat</strong> отдельно.<br>
	Собственно, почти все готово, можно сочинять основной код.
</p>

<h4>
	<br>
	<u><span style="color:#8e44ad;">Этап четвертый: Собираем все вместе.</span></u>
</h4>

<p>
	Выше описаны три части, из которых будет состоять код, так его и строим:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_5122_24" style=""><span class="pln">rem 1. Вызов подпрограммы дешифровки
call :_Decryption
rem 2. Выполнение расшифрованного файла set_creds.bat
call :_ActionSetCredsBat
rem 3. Вызов подпрограммы скачивания
call :_CurlDownload
echo  Done.
pause
exit

rem 1a. Подпрограмма дешифровки
:_Decryption
set "payload=iPaVllcKST2ZngcntNlxZEWgqyR6lit7ET77ILS2qttol9IssNKB5dX16u6O+hUJI5ckN/YyB9XXa4yJdStzrsdyMVR9CETl9dWfewrc4cddxpImKPooktIJfN6WhKIfgqd1207QQcXyNrQIBDg3Jw=="
powershell -NoProfile -ExecutionPolicy Bypass -File "QuasSafe.3.9.4.ps1" -Decrypt -payload "%payload%" -outfile "set_creds.bat" -hint "MyHint" -saltText "MySalt"
exit /b

rem 2a. Выполнение расшифрованного файла с последующим его удалением
:_ActionSetCredsBat
if exist set_creds.bat call set_creds.bat&amp;&amp;del /f /q set_creds.bat
exit /b

rem 3a. Скачивание файла
:_CurlDownload
curl -Lko -u  %curllogin%:%curlpass% myfile.txt %curllink%
exit /b</span></pre>

<p>
	Первую и вторую части можно совместить, а также сделать проверку на ошибки (см. пример в начале статьи)<br>
	Собственно, это все.
</p>

<p>
	 
</p>

<p>
	Несколько важных пояснений:<br>
	Шифровать можно все что угодно, не обязательно логины и пароли. Но следует иметь в виду, что код будет записан в одну строку, а ее размер ограничен.<br>
	Скриптовые файлы (<strong>cmd, bat, ps1</strong>) будут выполнены в соответствующей оболочке, а остальные открыты программами по умолчанию, например если расширение файла будет <strong>txt</strong>, то он откроется программой <strong>Notepad</strong>, и так далее.<br>
	Ключ в примере приведен настоящий, со всеми вышеописанными параметрами и значениями, можете попрактиковаться на нем, например импортировать файл <strong>vault.txt</strong>, который будет приложен к статье.<br>
	Напомню, пароль к ключу тоже указан здесь же, это "<strong>mypassword</strong>" без кавычек.<br>
	 
</p>
]]></description><guid isPermaLink="false">17</guid><pubDate>Wed, 29 Apr 2026 13:20:41 +0000</pubDate></item><item><title>Quest Backup Tool</title><link>https://vrcomm.ru/files/file/16-quest-backup-tool/</link><description><![CDATA[<h2 style="text-align: center;">
	<strong>  Утилита предназначена для автоматического регулярного бэкапа данных приложений из командной строки.</strong>
</h2>

<p>
	 
</p>

<p>
	     Для использования утилиты требуются три вещи:
</p>

<p>
	<span style="color:#27ae60;"><strong>  1. Подключенный шлем.</strong></span>
</p>

<p>
	 
</p>

<p>
	<span style="color:#27ae60;"><strong>  2. Созданный список приложений с названием пакета каждого приложения в новой строке.</strong></span>
</p>

<p>
	     Пример содержимого файла-списка:
</p>

<p>
	<strong><span style="color:#2980b9;">       com.innerspacevr.theseus<br>
	       com.DungeonGames.Descending<br>
	       com.innerspacevr.afishermanstale</span></strong>
</p>

<p>
	 
</p>

<p>
	     Список должен называаться <strong><span style="color:#8e44ad;">25</span>ListForBackups.txt</strong>, где <strong><span style="color:#8e44ad;">25</span></strong> - уникальный номер списка.<br>
	     <span style="color:#c0392b;"><strong>Номер может быть любым</strong></span>, именно по нему программа будет идентифицировать какой именно список следует обрабатывать. Списков может быть сколько угодно.
</p>

<p>
	 
</p>

<p>
	<span style="color:#27ae60;"><strong>  3. Параметр для запуска программы.</strong></span>
</p>

<p>
	     Он пишется через пробел после файла <strong>qbt_v1.0.exe</strong> и представляет собой две буквы <strong>qq  </strong>или <strong>qn </strong>и тот самый уникальный номер списка, в данном случае это номер <span style="color:#8e44ad;"><strong>25</strong></span>.<br>
	     Пример запуска для обработки списка с номером <span style="color:#8e44ad;"><strong>25</strong></span>:
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_9109_9" style=""><span class="pln">       qbt_v1.0.exe qq25</span></pre>

<p>
	<br>
	       или<br>
	 
</p>

<pre class="ipsCode prettyprint lang-html prettyprinted" id="ips_uid_9109_11" style=""><span class="pln">       qbt_v1.0.exe qn25</span></pre>

<p>
	 
</p>

<p>
	Разница между параметрами в том, что запуск с параметром <strong>qq </strong>прибивает процесс <strong>adb.exe</strong> после завершения бэкапа, а запуск с <strong>qn </strong>оставляет его работать.<br>
	В остальном эти команды идентичны.
</p>

<p>
	 
</p>

<p>
	Также можно сделать ярлык для файла <strong>qbt_v1.0.exe</strong> - в свойствах ярлыка в поле <strong>Объект </strong>дописать в конце пути после файла <strong>qbt_v1.0.exe</strong> пробел и параметр <strong>qq<span style="color:#8e44ad;">25</span> </strong>или <strong>qn<span style="color:#8e44ad;">25</span></strong>. После этого при запуске ярлыка сразу начнется обработка списка <strong><span style="color:#8e44ad;">25</span>ListForBackups.txt</strong>.
</p>

<p>
	<br>
	Файл <strong>qbt_v1.0.exe</strong> может лежать где угодно, главное чтобы списки находились рядом с ним. Для запуска в свернутом виде в свойствах ярлыка в поле <strong>Окно </strong>выберите <strong>Свернутое в значок</strong>.
</p>

<p>
	Бэкапы сохраняются рядом с программой в каталоге <strong>Backups </strong>и подкаталоге с текущей датой и временем бэкапа. Лог архивации сохранен в файле <strong>ArchiveLog-.txt</strong> и находится в каталоге <strong>Backups.</strong><br>
	Список пропущенных приложений находится в файле <strong>ZeroSizeBackups.txt</strong> рядом с программой. Чтобы бэкап данных этих приложений стал возможным, запустите эти приложения хотя бы один раз. Если такого файла нет, значит все приложения забэкапились успешно.
</p>

<p>
	 
</p>

<p>
	Запуск программы без параметров покажет два экрана помощи. То же самое, если запустить с параметром <strong>h</strong>. Одновременно с отображением помощи программа создает тестовый файл-список <strong><font color="#8e44ad">0</font>ListForBackups.txt</strong>, в котором показан формат списка с тестовыми названиями пакетов приложений.
</p>

<p>
	 
</p>

<p>
	<span style="color:#27ae60;"><strong>Подсказка:</strong></span> чтобы забэкапить пропущенные приложения вы можете использовать файл <strong>ZeroSizeBackups.txt</strong>. Достаточно переименовать его в <strong>ListForBackups.txt</strong> с уникальным номером в началае имени файла. Но прежде не забудьте запуститьприложения в этом списке, чтобы создались их данные.
</p>

<p>
	 
</p>

<p>
	<span style="color:#e74c3c;"><strong>Программа только бэкапит данные. Для восстановления используйте утилиту</strong></span> <a href="https://vrcomm.ru/files/file/7-quest-adb-scripts-quas/" rel="">Quas</a>, <span style="color:#e74c3c;"><strong>пункты Q - D</strong></span>.
</p>

<p>
	 
</p>
]]></description><guid isPermaLink="false">16</guid><pubDate>Fri, 30 May 2025 11:57:25 +0000</pubDate></item><item><title>Quest Firmware Unpacker</title><link>https://vrcomm.ru/files/file/15-quest-firmware-unpacker/</link><description><![CDATA[<p>
	<strong>Описание:</strong>
</p>

<p>
	Консольная утилита для распаковки прошивок VR-шлемов Oculus Quest (и не только). Позволяет извлекать системные разделы из OTA-обновлений.
</p>

<p>
	 
</p>

<p>
	<strong>Функциональные возможности:</strong>
</p>

<p>
	- Извлекает образы прошивки Android из OTA-файла payload.bin
</p>

<p>
	- Поддерживает новый формат OTA-обновлений для системы A/B
</p>

<p>
	- Распаковывает и декомпрессирует образы прошивки
</p>

<p>
	- Работает с ZIP-архивами и BIN-файлами прошивок
</p>

<p>
	- Показывает прогресс распаковки каждого раздела
</p>

<p>
	 
</p>

<p>
	<strong>Использование:</strong>
</p>

<p>
	1. Скачайте прошивку для вашей модели Quest с сайта <a href="https://cocaine.trade" rel="external nofollow">https://cocaine.trade</a>
</p>

<p>
	2. Запустите утилиту через командную строку:
</p>

<pre class="ipsCode">qfu.exe &lt;файл_прошивки&gt; [папка_для_распаковки]</pre>

<p>
	где:
</p>

<p>
	- файл_прошивки - путь к OTA-пакету (в формате .zip или .bin)
</p>

<p>
	- папка_для_распаковки - куда сохранять файлы (по умолчанию: .\output)
</p>

<p>
	 
</p>

<p>
	<strong>Пример использования:</strong>
</p>

<pre class="ipsCode">qfu.exe q3_50473320109900510.zip output</pre>

<p>
	В процессе работы утилита показывает прогресс распаковки каждого раздела:
</p>

<pre class="ipsCode">Opening ZIP file q3_50473320109900510.zip to extract to C:\Projects\Python\extract_android_ota_payload\dist\output...
Extracting to target directory: C:\Projects\Python\extract_android_ota_payload\dist\output
Extracting 'boot.img'
[==================================================] 48/48
Extracting 'odm.img'
[==================================================] 23/23
Extracting 'product.img'
[==================================================] 162/162
Extracting 'system.img'
[==================================================] 414/414
Extracting 'system_ext.img'

...

Extracting 'featenabler.img'
[==================================================] 1/1
Extracting 'hyp.img'</pre>

<p>
	 
</p>

<p>
	 
</p>

<p>
	Исходный код доступен на <a href="https://github.com/Reydan46/extract_android_ota_payload" rel="external nofollow">GitHub</a>
</p>
]]></description><guid isPermaLink="false">15</guid><pubDate>Wed, 18 Dec 2024 07:43:40 +0000</pubDate></item><item><title>Quest Firmware Viewer</title><link>https://vrcomm.ru/files/file/14-quest-firmware-viewer/</link><description><![CDATA[<p>
	Простая утилитка, которая отображает Версию среды и Версию прошивки шлемов Quest.
</p>

<p>
	Для правильной работы требуется подключение шлема к ПК и включенный Режим разработчика.
</p>
]]></description><guid isPermaLink="false">14</guid><pubDate>Tue, 17 Dec 2024 10:09:32 +0000</pubDate></item><item><title>ADB Control</title><link>https://vrcomm.ru/files/file/13-adb-control/</link><description><![CDATA[<p>
	Простое приложение для управления ADB из шлема. Позволяет управлять ADB/USB и ADB/TCP (wireless/WiFi).<br />
	Использование: установите приложение на шлем и выдайте необходимые права командой (для этого ADB уже должен быть доступен на шлеме):
</p>

<blockquote class="ipsQuote" data-ipsquote="">
	<div class="ipsQuote_citation">
		Цитата
	</div>

	<div class="ipsQuote_contents">
		<p>
			adb shell pm grant com.xre.adbcontrol android.permission.WRITE_SECURE_SETTINGS
		</p>
	</div>
</blockquote>

<p>
	<br />
	При включении ADB/TCP будут отображены команды, необходимые для подключения. Для локального подключения (например из установленного на шлем Bugjager) можно использовать IP 127.0.0.1, однако наличие WiFi подключения в любом случае необходимо для активации ADB сервера.
</p>
]]></description><guid isPermaLink="false">13</guid><pubDate>Mon, 12 Aug 2024 22:55:29 +0000</pubDate></item><item><title>Curl</title><link>https://vrcomm.ru/files/file/12-curl/</link><description><![CDATA[<p>
	curl
</p>
]]></description><guid isPermaLink="false">12</guid><pubDate>Fri, 17 May 2024 18:19:57 +0000</pubDate></item><item><title>Private Quest</title><link>https://vrcomm.ru/files/file/11-private-quest/</link><description><![CDATA[<p>
	Альтернативный клиент для окулуса. Протестирован на Quest 2 и Quest 3, но теоретически может подойти и для других, требуется проверка. Полностью оффлайн, никогда не будет вымогать инет, регистрацию и прочее, т.е. позволяет пользоваться шлемом вообще без аккаунта на фейсбуке. Приложение спроектировано так, чтобы покрывать максимальный спектр типов шлемов и прошивок, по этому некоторые функции могут не работать на каких-то прошивках - так как просто не поддерживаются этими прошивками.<br />
	Возможности:<br />
	- Позволяет полностью пройти первичную настройку без серверов фейсбука (но инет все же нужен, внезапно доступ к гуглу, это к сожалению никак не обойти);<br />
	- Включениe dev mode/ADB, а также ADB over TCP (WiFi);<br />
	- Установка времени (берется со смартфона);<br />
	- Включиние/выключение обновлений;<br />
	- Управление WiFi шлема;<br />
	- Управление трансляциями (chromecast);<br />
	- Разнообразная информация по устройству.
</p>

<p>
	Минимальные требования: Android 5.0 (API level 21), наличие Bluetooth low energy (BLE).
</p>

<p>
	 
</p>

<p>
	Подробное описание: <a href="https://4pda.to/forum/index.php?showtopic=1081181" rel="external nofollow">https://4pda.to/forum/index.php?showtopic=1081181</a>
</p>
]]></description><guid isPermaLink="false">11</guid><pubDate>Wed, 23 Jul 2025 18:38:12 +0000</pubDate></item><item><title>Performance HUD Cropper</title><link>https://vrcomm.ru/files/file/10-performance-hud-cropper/</link><description><![CDATA[<p>
	Утилита для автоматического сохранения графиков мониторинга Performance HUD из программы Oculus Debug Tool
</p>

<p>
	 
</p>

<p style="text-align:center;">
	<img class="ipsImage ipsImage_thumbnailed" data-fileid="764" data-ratio="65.49" width="681" alt="preview.jpg.c277dad3c2a0415d9d01aedbf7b908fe.jpg" data-src="https://vrcomm.ru/uploads/monthly_2024_03/preview.jpg.c277dad3c2a0415d9d01aedbf7b908fe.jpg" src="https://vrcomm.ru/applications/core/interface/js/spacer.png" />
</p>

<p style="text-align:center;">
	 
</p>

<p style="text-align:center;">
	 
</p>

<p>
	<strong>Описание:</strong>
</p>

<p>
	Программа создана для упрощения выдергивания графиков мониторинга Performance HUD.
</p>

<p>
	 
</p>

<p>
	<strong>Функциональные возможности:</strong>
</p>

<ul>
	<li>
		Автоматически запускает мониторинг Performance HUD и отображает все его графики по-очереди.
	</li>
	<li>
		Так же автоматически делает скриншоты со шлема с графиками и обрезает (кропает) все лишнее, оставляя только график.
	</li>
	<li>
		Сохраняет кроп с именем графика и датой/временем создания.
	</li>
	<li>
		Может делать несколько повторов по всем графикам. Количество повторов задается вручную.
	</li>
	<li>
		Каждый повтор обозначается соответствующей цифрой в начале имени файла.
	</li>
	<li>
		Можно вручную задавать временной интервал между повторами
	</li>
</ul>

<p>
	 
</p>

<p>
	<strong>Использование:</strong>
</p>

<ul>
	<li>
		Стартуете игру, затем стартуете эту программу
	</li>
	<li>
		Читаете вводную инструкци, выбираете количество повторов и интервал между ними
	</li>
	<li>
		Жмете любую кнопку.
	</li>
	<li>
		И через пару минут в текущем каталоге лежат картинки с графиками, и только с ними, ничего лишнего. А далее можно выкладывать хоть на 4pda, хоть анализировать (если с повторами, то на разных сценах) и т.д.
	</li>
</ul>

<p>
	 
</p>

<div class="cyberdevil_spoiler" data-ipscyberdevil_spoiler="">
	<div class="ipsSpoiler_header">
		<p>
			<strong>Изменения в версии v2.0</strong>
		</p>
	</div>

	<div class="ipsSpoiler_contents">
		<p>
			На случай смещения графика кропа влево или если поля кропа слишком широкие, добавлены две альтернативные предустановки координат кропа, не считая дефолтной. Они устанавливаются при запуске программы один раз с параметром 2 или 3 , например: PerfHUDCropper_v2.0.exe 2 Перед этим следует удалить файл settings.txt . Координаты кропа запишутся в файл settings.txt и будут использоваться в дальнейшем. После чего программу можно будет запускать как обычно, без параметров. Для дефолтной предустановки также удалите файл settings.txt и запустите программу без параметров.
		</p>

		<p>
			Переделан алгоритм использования координат кропа, так что в будущем можно будет легко добавть и другие предустановки.
		</p>

		<p>
			По умолчанию (по нажатию Enter) будет установлен только один повтор цикла снятия графиков
		</p>
	</div>
</div>

<p>
	 
</p>

<div class="cyberdevil_spoiler" data-ipscyberdevil_spoiler="">
	<div class="ipsSpoiler_header">
		<p>
			<strong>Изменения в версии v1.1 </strong>
		</p>
	</div>

	<div class="ipsSpoiler_contents">
		<p>
			Добавлен файл с настройками settings.txt.
		</p>

		<p>
			Если такого файла нет, при первом запуске он будет создан рядом с программой. Во второй строке указаны дефолтные координаты кропа: X, Y, ширина, высота. Числа можно менять, тогда программа будет использовать эти значения, что позволит менять метоположение и размер кропа.
		</p>
	</div>
</div>

<p>
	 
</p>

<p>
	 
</p>
]]></description><guid isPermaLink="false">10</guid><pubDate>Thu, 21 Mar 2024 20:09:25 +0000</pubDate></item><item><title>OXR_Switcher</title><link>https://vrcomm.ru/files/file/9-oxr_switcher/</link><description><![CDATA[<p>
	Давно пользуюсь одной замечательно программой, написанной <a contenteditable="false" data-ipshover="" data-ipshover-target="https://vrcomm.ru/profile/76-jonyrh/?do=hovercard" data-mentionid="76" href="https://vrcomm.ru/profile/76-jonyrh/" rel="">@jonyrh</a>, чертовски полезная вещь.
</p>

<p>
	Это переключатель среды выполнения VR - устанавливая ее дефолтной.
</p>

<p>
	Если сред несколько, то они очень любят отбирать друг у друга дефолт, а программка сделает так, как надо.
</p>
]]></description><guid isPermaLink="false">9</guid><pubDate>Wed, 03 Jun 2026 19:18:12 +0000</pubDate></item></channel></rss>
