| installer | ||
| scripts | ||
| src/SiszlConnectDemo | ||
| SSL | ||
| .gitignore | ||
| README.md | ||
| SISZL-connect-demo.sln | ||
| UpgradeLog.htm | ||
SISZL-connect-demo
WinUI 3 (.NET 8, unpackaged) демо-клиент АПИ СИСЗЛ ТФОМС.
Эталон протокола — C++ библиотека ../siszl. Это приложение не линкует siszl.dll, а повторяет IAM + HTTP + SSL pin на C#.
Требования
- Windows 11 (или Windows 10 1809+)
- .NET 8 SDK (только для сборки)
- На целевой машине SDK не нужен — используйте portable-сборку (self-contained)
Сборка
cd SISZL-connect-demo
dotnet build src\SiszlConnectDemo\SiszlConnectDemo.csproj -c Release -p:Platform=x64
Portable-релиз (для тестовой машины)
dotnet publish src\SiszlConnectDemo\SiszlConnectDemo.csproj `
-c Release -r win-x64 --self-contained true `
-p:Platform=x64 `
-p:WindowsAppSDKSelfContained=true `
-p:PublishReadyToRun=true `
-o dist\SISZL-connect-demo-portable
Скопируйте папку dist\SISZL-connect-demo-portable на тестовую машину и запустите SiszlConnectDemo.exe.
Положите сертификат в SSL\froms_cert.crt внутри этой папки (или добавьте через «Настройки»).
После publish скрипт scripts\cleanup-publish.ps1 оставляет только локаль ru-RU, убирает createdump/DAC/PDB; SiszlConnectDemo.deps.json и SiszlConnectDemo.runtimeconfig.json обязательны и не удаляются.
Инсталлятор (Setup.exe)
Нужен Inno Setup 6+ (ISCC.exe). Установка: winget install --id JRSoftware.InnoSetup -e.
cd SISZL-connect-demo
.\scripts\build-installer.ps1
Скрипт публикует portable-сборку, запускает cleanup (только ru-RU, без dump/debug) и собирает инсталлятор:
dist\SISZL-connect-demo-portable\— self-contained содержимоеdist\SISZL-connect-demo-Setup-1.0.0.exe— Setup (установка в%LocalAppData%\Programs\SISZL-connect-demo, без прав администратора)
Сертификат в инсталлятор не входит — положите его в SSL\ после установки или через «Настройки». Настройки по-прежнему в %AppData%\SISZL-connect-demo\.
SSL
По умолчанию сертификат ищется в SSL/froms_cert.crt рядом с exe.
Кнопка «Добавить сертификат» в настройках копирует выбранный файл туда.
Переменные окружения (как в C++):
SISZL_SSL_CA_CHAIN— путь к pin-файлуSISZL_SSL_VERIFY—0/falseотключает проверку
Настройки
Сохраняются в %AppData%\SISZL-connect-demo\settings.json.
Client ID, секрет, логин и пароль — через DPAPI (CurrentUser); в файле только поля *Protected (Base64). URL и путь к сертификату остаются открытым текстом.
Данные API
Ответы JSON хранятся только в оперативной памяти, отображаются в таблице и очищаются при новой загрузке. На диск не пишутся.
Период выборки — текущий календарный месяц (без UI фильтров). План: eventType=DVN.