Функция Run ( "program" [, "workingdir" [, show_flag [, opt_flag]]] )
[1] имеет в общей сложности 4 параметра. Если вы пропустите workingdir
по ошибке, он не будет работать должным образом и для @error
установлено значение 1 * 1006.*
Правильный вызов функции был бы:
$pid = Run('"' & $executable & '"' & $flags & ' "' & $somefile & '"', "", @SW_HIDE, $STDOUT_CHILD+$STDERR_CHILD)
Рабочий каталог там не указан, что не рекомендуется, но я не требовал его для моего варианта использования.