Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: WiX: инсталляция на удалённой машине  (Прочитано 9963 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« : 13-09-2012 12:51 » 

Собственно, как мне тут подсказывают, так никто не делает, но клиенту хочется, а он как известно... Короче, есть инсталлятор msi, созданный средствами WiX 3.6.
В частности, он устанавливает xml файл конфигурации:

Код: (XML)
<?xml version="1.0" encoding="utf-8" ?>
<app_settings>
        <key name="install">
                <values>
                        <value name="InstallationDate"></value>
                </values>
        </key>
</app_settings>

Инсталлятор должен внести изменения в этот файл, например, записать дату инсталляции:

Код: (XML)
<Component Id="MainAppSettings" Guid="E29E0693-7958-4CA8-AE49-F62D69D2F270">

    <File Id="appsettingsXML" Name="app_settings.xml" Source="app_settings.xml" />

    <util:XmlFile Id="AppSetingsInstDate"
           Action="setValue"
           ElementPath="//app_settings/key[\[]@name='install'[\]]/values/value[\[]@name='InstallationDate'[\]]"
           Value="[Date]"
           File="[#appsettingsXML]"
           SelectionLanguage="XPath"
           Sequence="1"/>

</Component>

Если инсталляция выполняется локально, то всё в порядке. Если же, в качестве целевой папки, указывается удалённый ресурс - \\REMOTE1\bin\, то при попытке редактирования xml файла возникает ошибка (даже, если это mapped диск):
ExecXmlFile:  Error 0x80070005: failed to load XML file: \\REMOTE1\bin\app_settings.xml

Все права на удалённый ресурс присутствуют (нет никаких ограничений), инсталляция выполняется админом (он же является админом и на удалённой системе).
Файл создаётся инсталлятором на удалённом ресурсе, доступен через Проводник и, например, может быть спокойно отредактирован в любом текстовом редакторе.

Кто-нить сталкивался? Чего msiexec не нравится?

зы использование <util:XmlConfig> приводит к аналогичным результатам. Такая же фигня, если использовать File="[INSTALLLOCATION]appsettings.xml"
« Последнее редактирование: 13-09-2012 12:53 от Джон » Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #1 : 13-09-2012 17:39 » 

Как всегда, в винде все хитро...

Цитата
Дело в том что Windows Installer (MSI) выполняет установку не из-под текущего пользователя, а из под учетной записи SYSTEM (т.е. от имени текущего компьютера, а не текущего пользователя. А у SYSTEM обычно есть права только на текущий компьютер. Если компьютер который производит установку, входит в домен, можно попробовать разрулить это два ему права на запись в ту папку куда производится установка.
http://www.rsdn.ru/forum/setup/4184499.flat
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #2 : 13-09-2012 21:52 » 

О как. Спасибо, Ром, за доп. инфу и, наверное, сохранённое время. Я уже почти начал был думать делать dll расширения msi для редактирования удалённых файлов, но сомневался, что это будет работать. Собственно, эмпирически  я пришёл примерно к такому же выводу: всё дело в правах доступа. Хотя насчёт мнения, что совсем уж ничего нельзя, не согласен. Ведь файлы-то копируются. Те происходит изменение на удалённой машине, и, если бы не редактирование xml, всё работало бы отлично. Да и работает, без всяких "бы". Просто раньше для всяких безобразных действий пользователя использовался реестр, а теперь клиенты хотят, чтобы всё было централизовано. С профайлами юзверов проблемы нет, но вот что раньше инсталлятор прописывал в HKLM, приходится теперь "поставлять" в виде xml файла - основы для профайлов юзверов.

А вобще конечно, теория подтверждается: "так никто не делает". Но есть ещё такие люди, которым надо самим сунуть руку в огонь, чтобы понять что он тёплый. Про установку драйверов, аддонов и пр системной лабуды никто, ессно, не подумал. Те реально что им надо, по сути, это портативная версия, которую можно запускать с юсбистика и тп.
Поэтому менеджера нашего я уже убедил. Он сказал, что пока не найдётся решение, пусть клиенты устанавливают локально.
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #3 : 14-09-2012 03:44 » 

Клиенту надо понять, что же он хочет. Ага

Для централизованной установки софта у MS есть соотв. продукты. Они заварили кашу, у них лучше получится и выплывать из нее.
« Последнее редактирование: 14-09-2012 03:46 от RXL » Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #4 : 14-09-2012 07:18 » 

Так в том-то и дело. Те до сих пор админам приходилось для особо талантливых пользователей индивидуально на каждой машине всё настраивать. И вот они решили, типа а чо, низя чё-ли делать всё ТОЖЕ САМОЕ, только один раз. Ну и вот.
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #5 : 14-09-2012 09:29 » 

Есть у них такой продукт как SMS Server.

Еще через pstools (бывшие SysInternals, нынче MS) можно удаленно установить.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #6 : 14-09-2012 11:59 » 

Не, Ром, фишка заключалась не в том, чтобы проинсталлировать на каждой удалённой системе, а в том, что продвинутый пользователь устанавливает прогу на своей рабочей системе, только использует "внешний диск" - удалённую систему, к которой другие пользователи тоже имеют доступ. Другими словами у него теперь только два варианта: а) он открывает доступ к своей машине для других пользователей сети; б) грузит инсталлятор в мешок и тащит его к этой удалённой системе и устанавливает всё на ней.

Как вариант решили (пока не твёрдо) инсталлить готовые файлы конфигурации, те сделать 14 языкозависимых файлов (для 14 языков, пока), и не редактировать их при инсталляции. Ну не знаю, они специалисты, им видней.
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines