Я не совсем уверен, как описать, как я "исправил" это / обошел его.
Кажется, что метод GetFileVersion () не использует тот же базовый путь, что и другая часть функциональности Inno, которая определяет, где находятся исходные файлы / устанавливаемые файлы.
ЖЕ относительные пути, используемые для:
// this is for determining what files get put into the install image
[Files]
Source: ..\Build\ForRelease\MyExeName.exe; DestDir: {app}
и
#define SrcApp "..\Build\ForRelease\MyExename.exe"
#define FileVerStr GetFileVersion(SrcApp)
, очевидно, не используют тот же механизм для разрешения имени файла / пути. Так что я решил обойти это, скопировав exe-файл, который содержит информацию о версии, в два дополнительных места (кроме .. \ Build \ ForRelease) - один, где hudson запускает процессы, а также в путь, где скрипт inoo является. (Мне лень выяснять, кто из них заставляет все это работать.
Опять же, это отлично работает из моего командного файла, но не из Гудзона. Я полагаю, это странное взаимодействие с тем, как работает Inno.