Другой подход, который хорошо работает, - получить имя компьютера через переменную окружения. Преимущество этого подхода (или недостаток, зависящий от вашего программного обеспечения) состоит в том, что вы можете легко заставить программу работать на другом компьютере.
Result := GetEnvironmentVariable('COMPUTERNAME');
Переменная среды имени компьютера задается системой. Чтобы «переопределить» поведение, вы можете создать пакетный файл, который вызывает вашу программу, устанавливая переменную среды перед вызовом (каждый интерпретатор команд получает свою собственную «копию» среды, и изменения являются локальными для этого сеанса или любых дочерних элементов). запущен с этой сессии).