Назад | Перейти на главную страницу

Запустить исполняемый файл на удаленном компьютере с помощью командного файла

Я пытаюсь понять, как настроить командный файл, который пользователь будет запускать из приложения, размещенного на Citrix XenApp, таким образом, чтобы он запускал .exe со своего локального компьютера, а не открывал приложение из удаленного сеанса.

Я надеялся найти команду для использования в пакетном файле, чтобы он запускал .exe с локального компьютера пользователя, а не запускал его как удаленное приложение, и ему пришлось бы распознавать идентификатор компьютера пользователя на основе его сеанса Citrix или откуда запускается .bat ...

Вот что сейчас запускает .bat:

@echo off 

start "" "c:\program files\internet explorer\iexplore.exe" "http://google.com"

Таким образом, в программном обеспечении нашей компании они просто проходят через меню и выбирают один из вариантов, который запускает пакетный файл, подобный приведенному выше, и запускает .exe, как приложение удаленного рабочего стола.

Вместо того, чтобы запускать IE с диска C: сервера Citrix, к которому подключен пользователь, я хочу, чтобы он запускал IE с локального диска C: пользователя. Есть ли способ переписать каталог как UNC-путь к диску C: пользователя? .Bat должен распознать имя компьютера, поэтому я полагаю, что мы можем сохранить значение для имени хоста в переменной, а затем, возможно, ввести каталог как путь unc с этим значением? Я имею в виду примерно следующее:

   @echo off 
   set computer= hostname

    start "" "\\computer\C$\program files\internet explorer\iexplore.exe" "http://google.com"

Я надеюсь это имеет смысл . Я попытался протестировать его, сохранив .bat на одном из серверов приложений Citrix, затем я просто зашел в этот каталог со своего локального компьютера в проводнике и запустил его, но когда я запустил его, он говорит, что не распознает путь / не не поддерживает UNC-пути ... Хотя имя моего компьютера отображается ...

Похоже, вы ищете PSEXEC. https://docs.microsoft.com/en-us/sysinternals/downloads/psexec

Я все время использую PSEXEC в сценариях BAT для перезапуска служб, установки MSI, изменения настроек IIS и т. Д.

Использование простое:

psexec \\remotemachine CommandToRun commandarguments

Например, одна из моих обычных команд psexec:

psexec \\RemoteMachineX c:\windows\system32\inetsrv\appcmd recycle apppool /apppool.name:DefaultAppPool