Архив рубрики: Блог

Статьи, заметки…

Inno Setup: Disk spanning must be enabled

Задача: При сборке истралятора — появляется ошибка компиляции:

Disk spanning must be enabled in order to create an installation larger than 2100000000 bytes in size

Инструментарий: Inno Setup (Pascal Script)
Решение: Проблема в том, что в результате файлы инсталятора будут занимать больше чем ~ 2 Гб.

Для того чтобы обойти данное ограничение и убрать ошибку, можно воспользоваться опцией DiskSpanning и DiskSliceSize, с помощью которых можно указать инсталятору что выходной файл должен быть разбит на тома с указанным размером.

Читать далее

Inno Setup: Проверка каталога на пустоту

Задача: Нужна функция, которая позволит определить пустой указанный каталог или нет.
Инструментарий: Inno Setup (Pascal Script)
Решение: Для того чтобы определить пустой каталог или нет воспользуемся методами FindFirst/FindNext. (Функция FindFirst ищет файлы по указанным параметрам, возвращая первое соответствие (если найдено) в результат поиска. Функция FindNext находит следующий файл после успешного FindFirst)
Читать далее

Отправка сообщения windows service

Задача: Есть сервис, написанный на C# — нужно отправить сообщение о изменении состояния, после чего сервис должен выполнить нужные методы.
Инструментарий: Visual Studio, C#
Решение: Для реализации данной задачи можно воспользоваться командой ServiceController.ExecuteCommand. Соответственно в сервисе нужно перекрыть метод  ServiceBase.OnCustomCommand.  Обратите внимание, команды можно определять в диапазоне от 128 до 255. Команды, которые расположены ниже 128 — зарезервированы системой.
Читать далее