Я упомяну это в любом случае (даже если вы сказали, что Cygwin отсутствует) одна вещь, которую вы можете использовать, это Fresshd . Он легкий и работает очень хорошо, насколько я могу судить. Помимо необходимости установки, чтобы он мог работать как служба, у него, похоже, нет других зависимостей.
Другой вариант - Powershell и WinRM , который позволяет вам использовать собственный .NET для управления окнами. К сожалению, я понятия не имею, как вы могли бы заставить его работать из Linux без использования виртуальной среды, чтобы запустить его. Тем не менее, он позволяет создавать сценарии процессов и передавать их на удаленные машины, которые будут выполняться.
Последние две опции, которые, как я видел, использовались в разных магазинах, - это: A) отправить сценарий установки на удаленную машину, затем войти в систему и запустить его в интерактивном режиме или B) нажать сценарий установки, но убедиться, что машина включена при загрузке (или первом входе в систему) всегда запускается «setup.bat», который проверяет наличие новой версии приложения и устанавливает ее. У обоих, конечно, есть свои минусы.
Это несколько других способов, но я не уверен, как вы могли бы заставить их работать на вас. Автоматическая установка MSI (или установка без вывода сообщений), но у меня нет такого опыта. Похоже, что первая пара хитов Google - это продукты, которые создают файлы MSI.
Надеюсь, это поможет.