# Руководство по созданию установщика VPN Client Go

## Требования

1. **Inno Setup 7** - скачайте с официального сайта: https://jrsoftware.org/isdl.php
2. Собранный файл `vpn-client-cli.exe`

## Шаги для создания установщика

### 1. Установите Inno Setup 7

Скачайте и установите Inno Setup 7 с официального сайта.

### 2. Подготовьте файлы

Убедитесь, что в папке `vpn_client_go` есть:
- `vpn-client-cli.exe` (собранный исполняемый файл)
- `installer.iss` (скрипт установщика)
- `LICENSE.txt` (лицензия)
- `.vpn_client/` (папка конфигурации - создастся автоматически)

Опционально (будут включены, если существуют):
- `xray/` (папка с Xray - можно не включать, загрузится автоматически)
- `v2ray/` (папка с V2Ray - можно не включать, загрузится автоматически)
- `README.md` (документация)
- `CHANGELOG.md` (список изменений)

### 3. Настройте installer.iss

Откройте `installer.iss` и измените:

```pascal
#define MyAppName "VPN Client Go"
#define MyAppVersion "1.0.0"          ; Ваша версия
#define MyAppPublisher "Your Name"     ; Ваше имя
#define MyAppURL "https://github.com/yourusername/vpn-client-go"  ; Ваш URL
```

Опционально добавьте иконку:
```pascal
SetupIconFile=icon.ico  ; Раскомментируйте и укажите путь к .ico файлу
```

### 4. Создайте установщик

#### Способ 1: Через GUI
1. Запустите Inno Setup Compiler
2. Откройте файл `installer.iss`
3. Нажмите `Build` → `Compile` (или F9)
4. Установщик будет создан в папке `installer_output/`

#### Способ 2: Через командную строку
```cmd
"C:\Program Files (x86)\Inno Setup 7\ISCC.exe" installer.iss
```

### 5. Результат

После компиляции в папке `installer_output/` появится файл:
```
VPNClientGo-Setup-1.0.0.exe
```

## Особенности установщика

✅ **Автоматические права администратора** - установщик запрашивает права админа
✅ **Поддержка русского и английского языков**
✅ **Создание ярлыков** на рабочем столе и в меню Пуск
✅ **Автоматическая загрузка Xray/V2Ray** при первом запуске
✅ **Чистая деинсталляция** - удаляет все файлы и папки

## Что делает установщик

1. Устанавливает `vpn-client-cli.exe` в `C:\Program Files\VPN Client Go\`
2. Создает папки для конфигурации и логов
3. Копирует Xray и V2Ray (если они есть в исходниках)
4. Создает ярлыки с правами администратора
5. Регистрирует программу в списке установленных приложений

## Запуск после установки

Программа автоматически запускается с правами администратора через ярлыки.

## Деинсталляция

Используйте стандартную деинсталляцию Windows:
- Панель управления → Программы и компоненты
- Или через ярлык "Удалить VPN Client Go" в меню Пуск

## Дополнительные настройки

### Добавить иконку приложения

1. Создайте файл `icon.ico` (256x256 или 128x128)
2. Поместите его в папку `vpn_client_go/`
3. Раскомментируйте строку в `installer.iss`:
   ```pascal
   SetupIconFile=icon.ico
   ```

### Изменить папку установки по умолчанию

В `installer.iss` измените:
```pascal
DefaultDirName={autopf}\{#MyAppName}
```

На например:
```pascal
DefaultDirName=C:\VPNClient
```

### Добавить дополнительные файлы

В секцию `[Files]` добавьте:
```pascal
Source: "your_file.txt"; DestDir: "{app}"; Flags: ignoreversion
```

## Автоматизация сборки

Создайте bat-файл `build_installer.bat`:

```batch
@echo off
echo Building VPN Client...
call build_cli_only.bat

echo Creating installer...
"C:\Program Files (x86)\Inno Setup 7\ISCC.exe" installer.iss

echo Done!
pause
```

Теперь можно собрать всё одной командой!
