Что нового

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

alberts1972

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

InnI

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

alberts1972

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

InnI

AutoIT Гуру
Сообщения
4 505
Репутация
1 225
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 385
Репутация
592
если нет автовхода на сетевой диск, то не будет работать.
возможно следует сначала программно подключить сетевой диск, потом запуск
 

InnI

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

alberts1972

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

ildar

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

InnI

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