Запуск программ по сети
Dec. 18th, 2007 10:08 pm![[identity profile]](https://www.dreamwidth.org/img/silk/identity/openid.png)
![[community profile]](https://www.dreamwidth.org/img/silk/identity/community.png)
Win 2003 Server
На сервере установлена некая программа. Существует необходимость запустить эту программу из локальной сети. Каталог, в который установлена прога, открыт для полного общего доступа с именем шары progdir даже для самого последнего юзера. Прога использует Net Framework 2.0.
При запуске c:\program files\progdir\proga.exe всё работает отлично.
При запуске \\server\progdir\proga.exe (запуск с сервера под админом) винда думает пару секунд, на экране ничего не происходит, а в журнале событий "Приложение" появляется запись ошибки с кодом 1000 (.NET) в коей указывается faulting application proga.exe, парам-парам, faulting module kernel32.dll.
Тот же результат получаем, если скопируем только экзешник программы в любое другое место, например на десктоп, и запустим оттуда. То есть получается, что программа при запуске не может получить доступ (или найти) dll-ку, которая лежит рядом с ней в расшаренном каталоге.
Было мнение, что проблема с доступом из-за NTFS, но установка проги на раздел FAT32 дала тот же результат.
Была попытка в процессе установки проги указать ей путь установки \\server\progdir\, но инсталлер на каком-то этапе ругается, что не может найти необходимый для установки файл по пути "file:///\\server\progdir...", не удалось.
Для экплорера программа является программой неизвестного издателя (он ругается при её запуске).
Такой способ запуска для данной проги в целом возможен, ибо на другом компе оно всё работает. Просмотрел все настройки безопасности, какие мог посмотреть на компе, где оно работает, различий не увидел.
Где и что надо прописать, чтобы оно заработало?
Я лох, помогите чайнику.
На сервере установлена некая программа. Существует необходимость запустить эту программу из локальной сети. Каталог, в который установлена прога, открыт для полного общего доступа с именем шары progdir даже для самого последнего юзера. Прога использует Net Framework 2.0.
При запуске c:\program files\progdir\proga.exe всё работает отлично.
При запуске \\server\progdir\proga.exe (запуск с сервера под админом) винда думает пару секунд, на экране ничего не происходит, а в журнале событий "Приложение" появляется запись ошибки с кодом 1000 (.NET) в коей указывается faulting application proga.exe, парам-парам, faulting module kernel32.dll.
Тот же результат получаем, если скопируем только экзешник программы в любое другое место, например на десктоп, и запустим оттуда. То есть получается, что программа при запуске не может получить доступ (или найти) dll-ку, которая лежит рядом с ней в расшаренном каталоге.
Было мнение, что проблема с доступом из-за NTFS, но установка проги на раздел FAT32 дала тот же результат.
Была попытка в процессе установки проги указать ей путь установки \\server\progdir\, но инсталлер на каком-то этапе ругается, что не может найти необходимый для установки файл по пути "file:///\\server\progdir...", не удалось.
Для экплорера программа является программой неизвестного издателя (он ругается при её запуске).
Такой способ запуска для данной проги в целом возможен, ибо на другом компе оно всё работает. Просмотрел все настройки безопасности, какие мог посмотреть на компе, где оно работает, различий не увидел.
Где и что надо прописать, чтобы оно заработало?
Я лох, помогите чайнику.
no subject
Date: 2007-12-18 09:12 pm (UTC)Решение — добавить для данной программы (по пути или strong-имени) права FullTrust при помощи оснастки конфигурации .net.
Это решит проблему, если программа не затрагивает специфические ресурсы первой машины (например, файлы, которых нету на второй машине, или драйверы, которые установлены только на первой)
аддон
Date: 2007-12-18 10:48 pm (UTC)Re: аддон
Date: 2007-12-20 03:18 pm (UTC)