Утилита CheckLockToolbar
CheckLockToolbar — репозиторий со вспомогательным кодом, который упрощает разработку Транслятора. К проекту подключается юнит LockProcManager (доступны реализации на Delphi и C#); его функции описаны ниже. Также в репозитории собрана утилита CheckLockToolbar.exe — её можно вызвать как отдельный процесс, если подключение юнита нежелательно.
IsTerminateProc(ProcessNames: string): boolean
Проверяет, не запущены ли указанные процессы в системе. Если находит таковые, то показывает окно:

Данное окно позволяет принудительно завершить указанные процессы или проигнорировать их.
Функция может быть использована во время установки/удаления Дополнения, так как иногда доступ к нужным файлам может быть заблокирован CAD-системой.
Параметры:
| Параметр | Описание |
|---|---|
ProcessNames |
Имена процессов через пробел, например "Alibre Design.exe". |
Результат:
| Значение | Описание |
|---|---|
True |
Указанные процессы не активны или были закрыты. |
False |
Указанные процессы не удалось закрыть, либо пользователь отменил их закрытие. |
RunAs(Filename, Parameters: string; Admin: boolean; WinState: DWORD; Wait: boolean = true): boolean
Запускает исполняемый файл на выполнение с параметрами.
Параметры:
| Параметр | Описание |
|---|---|
Filename |
Имя исполняемого файла. |
Parameters |
Список параметров, разделяются пробелом. |
Admin |
Флаг, запустить с правами администратора. |
WinState |
Параметры запуска процесса (например, SW_HIDE, SW_SHOW). |
Wait |
Флаг, ожидание завершения процесса. |
Результат:
| Значение | Описание |
|---|---|
True |
Файл был успешно запущен. |
False |
Ошибка при запуске. |
RunRegsvr32(DllPath, Param: string): boolean
Регистрирует/разрегистрирует библиотеку с помощью утилиты regsvr32, по сути являясь обёрткой для неё.
Параметры:
| Параметр | Описание |
|---|---|
DllPath |
Путь к библиотеке. |
Param |
Параметры для утилиты regsvr32: dllregisterserver — для регистрации, dllunregisterserver — для снятия с регистрации. |
Результат:
| Значение | Описание |
|---|---|
True |
Библиотека успешно зарегистрировалась/разрегистрировалась. |
False |
Ошибка. |