Что нового

Не срабатывает Run на сетевом диске

alberts1972

Новичок
Сообщения
16
Репутация
0
Пишу автоустановку программы. При использовании команды Run, пытаюсь запустить программу, которая лежит в общедоступной папке на сервере., и не запускается. Если эту прогу скопировать на локальный диск, то все нормально. :stars: Разрешения для пользователей есть на эту папку, ОС Windows 7 x64
 

InnI

AutoIT Гуру
Сообщения
4,912
Репутация
1,429
alberts1972
А из проводника запускается? Если да, то скопируйте из проводника путь. Если установщик при запуске требует повышения прав, то добавьте в скрипт
Код:
#RequireAdmin
 
Автор
A

alberts1972

Новичок
Сообщения
16
Репутация
0
InnI сказал(а):
alberts1972
А из проводника запускается? Если да, то скопируйте из проводника путь. Если установщик при запуске требует повышения прав, то добавьте в скрипт
Код:
#RequireAdmin
Из проводника запускается, путь и был скопирован из проводника. #RequireAdmin добавлен в скрипт и все равно.
 

InnI

AutoIT Гуру
Сообщения
4,912
Репутация
1,429
alberts1972
#RequireAdmin добавлен в скрипт
А у этого администратора, с правами которого скрипт запускается, доступ к сетевой папке есть?
Также проверьте путь к файлу через
Код:
FileExists()


Строку запуска можете показать?
 
A

Alofa

Гость
Может попробовать:
Код:
RunAs()

или/и поиграться с параметром "workingdir"?
 
Автор
A

alberts1972

Новичок
Сообщения
16
Репутация
0
Run($rpath)
InnI сказал(а):
alberts1972
#RequireAdmin добавлен в скрипт
А у этого администратора, с правами которого скрипт запускается, доступ к сетевой папке есть?
Также проверьте путь к файлу через
Код:
FileExists()


Строку запуска можете показать?
Доступ есть.
Run($rpath)
где rpath=g:\common\DISK1\setup.exe

Если например скопировать setup.exe в локальную папку и конечно поменять в переменной путь на нее, то все запускается.
 

joiner

Модератор
Локальный модератор
Сообщения
3,556
Репутация
628
если нет автовхода на сетевой диск, то не будет работать.
возможно следует сначала программно подключить сетевой диск, потом запуск
 

InnI

AutoIT Гуру
Сообщения
4,912
Репутация
1,429
alberts1972
Либо используйте полный путь
Код:
$rpath="\\ServerName_Or_IP\FolderName\common\DISK1\setup.exe"
Либо "активируйте" сетевой диск
Код:
DriveMapAdd("g:", "\\ServerName_Or_IP\FolderName")
 
Автор
A

alberts1972

Новичок
Сообщения
16
Репутация
0
InnI сказал(а):
alberts1972
Либо используйте полный путь
Код:
$rpath="\\ServerName_Or_IP\FolderName\common\DISK1\setup.exe"
Либо "активируйте" сетевой диск
Код:
DriveMapAdd("g:", "\\ServerName_Or_IP\FolderName")
С полным путем все заработало!!!
Но, почему так, вопрос остается открытым?
А так диск G и так был подключен, но если указано как "g:\common\DISK1\setup.exe", то прога зависает. Кстати на XP это работает, не работает на Windows 7.
 

InnI

AutoIT Гуру
Сообщения
4,912
Репутация
1,429
alberts1972
диск G и так был подключен <...> не работает на Windows 7
Проблема в том, что вам нужно выполнить скрипт с правами администратора, иначе у скрипта не хватит прав на запуск установщика. А диск при входе в систему подключается с правами пользователя (не "от имени", а "с правами"). И, чтобы получить доступ к сетевому диску с правами администратора, нужно дополнительно его подключить с правами администратора.
 
Автор
A

alberts1972

Новичок
Сообщения
16
Репутация
0
InnI сказал(а):
alberts1972
диск G и так был подключен <...> не работает на Windows 7
Проблема в том, что вам нужно выполнить скрипт с правами администратора, иначе у скрипта не хватит прав на запуск установщика. А диск при входе в систему подключается с правами пользователя (не "от имени", а "с правами"). И, чтобы получить доступ к сетевому диску с правами администратора, нужно дополнительно его подключить с правами администратора.
Не понял. На компе где тестировался скрипт у моей доменной учетной записи права локального админа. Еще при логоне там подключается сетевой диск под G:, где у моей доменной учетной записи полный доступ. По вашему выходить что еще нужны дополнительные права. Локального админа сервера или доменного администратора? Что то не то. На XP работает, а на Windows 7 не работает. В чем причина?
Сам скрипт выполнялся с правами локального админа.
 

ildar

Осваивающий
Сообщения
252
Репутация
29
Начиная с Vista появилось "запуск от имени администратора". Права локального админа это другое.
 

InnI

AutoIT Гуру
Сообщения
4,912
Репутация
1,429
alberts1972
на Windows 7 не работает. В чем причина?
Причина во включённом контроле учётных записей UAC. Когда вы запускаете установщик с локального диска, у вас появляется окно запроса повышения прав. Какими бы супер-пупер-доменно-локальными учётками вы не обладали, при включённом UAC всегда будет появляться это окно. И вот, скажем так, "в этом режиме" и нужно подключить сетевой диск, чтобы получить к нему доступ с этими повышенными правами.
 
Верх