Ошибка 25531 не удалось открыть xml файл

Помогаю со студенческими работами здесь

Не устанавливается драйвер на amd (или устанавливается?)
Здравствуйте. Проблема такая. Устанавливаю драйвер на amd r9 380, и в момент установки гаснет экран…

Не устанавливается Windows (Ubuntu устанавливается)
точнее убунту не устанавливается а доходит до точки выбора раздела и форматирование, а виндовзы(Xp,…

Wi-Fi в офис
Дано:
Оставшаяся после предыдущих арендаторов офиса патч панель с уже присоединенными идущими от…

офис 7
установленный офис 7 не запускается ни водном из приложений, при открытии документа в ворде или…

Офис!
Правила
5.7. Запрещено создание и распространение вредоносного ПО (вирусов), кряков и взлома…

офис
Подскажите где можно скачать установочники на офисы 2003, 2007, 2010 с кодом активации

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:

Вопрос:

Я перехожу из Wise Installer в WIX и использую утилиту xmlfile для обновления конфигурационного xml файла.

Это работает.

<Component Id="config" Guid="*">
<File Id="config" Source="..SourceDesktopprodconfig.xml" KeyPath="yes" Vital="yes" />
<util:XmlFile
Id="_PORT_" File="[INSTALLDIR]prodconfig.xml"
Action="setValue"
Name="Port" Value="[PORT]"
ElementPath="//Configuration/CommConnectionPools/CommConnectionPool"
Sequence='1' />
</File>
</Component>

Это не работает.

<Component Id="config" Guid="*">
<File Id="config" Source="..SourceDesktopprod-config.xml" KeyPath="yes" Vital="yes" />
<util:XmlFile
Id="_PORT_" File="[INSTALLDIR]prod-config.xml"
Action="setValue"
Name="Port" Value="[PORT]"
ElementPath="//Configuration/CommConnectionPools/CommConnectionPool"
Sequence='1' />
</File>
</Component>

Когда .msi выполняется с первым компонентом, все в порядке. Во второй версии возвращается ошибка “Ошибка 25531. Не удалось открыть файл XML…”

Насколько я могу судить, единственным отличием является дефис в имени файла.

Любые предложения относительно того, какая разница может быть?

Лучший ответ:

Попробуйте использовать идентификатор компонента вместо жесткого кодирования имени

[#config] //which will refer to the File Id

вместо

[INSTALLDIR]prod-config.xml

Ответ №1

Значение атрибута File для тега util:XmlFile должно относиться к атрибуту Id для тега File.

В вашем случае это будет

<Component Id="config" Guid="*">
<File Id="config" Source="..SourceDesktopprod-config.xml" KeyPath="yes" Vital="yes" />
<util:XmlFile
Id="_PORT_" File="[#config]"
Action="setValue"
Name="Port" Value="[PORT]"
ElementPath="//Configuration/CommConnectionPools/CommConnectionPool"
Sequence='1' />
</File>
</Component>

В вашем примере, поскольку вы используете один и тот же идентификатор для тега Component и тега File, это не имеет значения. Но в целом вам нужно использовать Id для тега File.

Чтобы уточнить, использовали ли ваш пример configComponent и configFile для Component и File идентификаторов. Он будет выглядеть следующим образом:

<Component Id="configComponent" Guid="*">
<File Id="configFile" Source="..SourceDesktopprod-config.xml" />
<util:XmlFile
Id="_PORT_" File="[#configFile]"
[snip]
/>
</File>
</Component>

Не удается открыть файл Office Open XML? На самом деле, это редкая проблема, которая случается не так часто.

Office Open XML представляет собой не единый формат документов, а целую серию известных форматов от компании Майкрософт. Туда входят:

  • «.docx»;

  • «.xlsx»;

  • «.pptx».

Подробнее, что такое Office Open XML

Сокращенно формат Office Open XML обозначается как «.ooxml». Он был внедрен в «офисный пакет» компании Майкрософт начиная с Microsoft Office 2007. Этот формат несет в себе несколько классных особенностей, например:

  1. Улучшенное сжатие файлов. Office Open XML использует zip-сжатие для сохранения документов, что улучшает процент сжатия в несколько раз. На деле это существенно экономит место на диске, когда приходится хранить большой объем документов или отправлять документы по электронной почте.

  2. Файлы легко восстанавливаются при повреждениях. Из-за особенной структуры хранения информации в этом формате такие документы открываются даже в тех случаях, когда какой-либо элемент документа поврежден. Например, если таблица в документе повреждена, вы все равно сможете его открыть и восстановить таблицу.

  3. Дополнительные расширения. Часть расширений для работы с документами в Microsoft Office доступна только для формата Office Open XML. 

  4. Улучшенная совместимость. Формат Office Open XML подразумевает, что документ такого формата может быть легко открыт в любом продукте «офиса». И самое важное, что такой формат совместим между разными версиями «офисных продуктов».

  5. И др.

Но даже у такого, казалось бы, качественного продукта знаменитой компании случаются сбои. Во время таких сбоев пользователи получают сообщение: «Не удается открыть файл Office Open XML».

Почему появляется ошибка «не удается открыть файл Office Open XML» в продуктах Office

Чаще всего такая ошибка связана с внутренним содержимым. Но самое интересное, что она возникает совершенно внезапно в тот момент, когда ее меньше всего ждешь. В любом случае такая ошибка возникает при ошибке в последнем редактировании документа в формате Office Open XML.

На самом деле, заострять свое внимание и просто гадать, почему возникли проблемы, не стоит. Лучше приступать к поиску проблем и решать их, тем более что у всех вероятных причин возникновения этой ошибки алгоритм исправления один.

Ошибка «не удается открыть файл Office Open XML»: как исправить

Чтобы исправить эту ошибку, для начала нужно провести анализ проблемного документа. Найдя проблемный фрагмент, его можно попытаться восстановить. Документ в формате «.ooxml» может содержать следующие виды информации:

  • обычный текст;

  • графическое изображение;

  • ссылки на веб-сайты;

  • таблицы с информацией;

  • различные диаграммы;

  • и многое другое.

В общем, документ в формате «.ooxml» может содержать любой компонент какого-либо продукта MS Office.

Методы исправления ошибки:

  1. Программа «Notepad++». Отлично сработает в тех случаях, если документ в формате Office Open XML является текстовым. Notepad++ в этом случае легко откроет его и поможет восстановить текстовые данные, даже если Word не смог этого сделать. Но у такого способа есть один минус — Notepad++ не поддерживает «текстовое форматирование». Простым языком: у вас перед глазами будет только текст без заголовков и абзацев — все это нужно будет восстановить «вручную», зато сам текст сохранится полностью.

  2. Программа «WordPad». Это малоизвестный встроенный в операционную систему Windows текстовый редактор. Он не функциональный и не имеет таких возможностей, как Notepad++ или Word, поэтому им мало кто пользуется. Но он всегда рядом и может открыть документ, когда другие «офисные программы» пишут: «не удается открыть файл Office Open XML». Наведите на проблемный файл курсор и откройте меню «Открыть с помощью…». Там найдите WordPad и откройте свой документ. Кстати, он работает с текстом, изображениями и ссылками, поэтому поможет восстановить данные этих видов.

  3. Программа «XMLPad». Это сторонняя программа, которую нужно скачать из интернета. Она простая и бесплатная, но в вашем проблемном случае должна помочь. Она способна открыть файлы разных форматов, в том числе и формата «Office Open XML». Обычно она открывает этот формат даже в тех случаях, когда «родные» программы выдают ошибку. Но вся ее прелесть в том, что она не просто открывает проблемный документ, а еще и показывает, в какой строке и каком месте возникла ошибка, мешающая «родным» программам.

  4. Другие «офисы». Иногда ошибка «не удается открыть файл Office Open XML» решается очень просто. Нужно поменять «офисный пакет». Чаще всего такая ошибка появляется именно у MS Office, поэтому попробуйте открыть проблемный документ в Libre Office или Open Office. Кстати, оба «офисных пакета» бесплатны и некоторым пользователям помогли решить проблему с этой ошибкой. 

Заключение

Практика показала, что чаще всего ошибка «не удается открыть файл формата Office Open XML» появляется в Microsoft Office, когда в документе преобладают технические формулы, а сам документ разрастается до больших размеров. Это указывает на то, что с большими размерами и формулами у «офисного пакета» есть некоторые проблемы.

Понятно, что от формул в документе никуда не денешься, если они там должны быть. Но вот с «большими размерами» документа можно бороться. Все, что нужно делать, — это заранее сохранять небольшие резервные части своей работы. Например, вы работаете над курсовой или дипломной работой, а может, пишете книгу. В этом случае написали 50-100 страниц работы, тогда сохраните ее отдельным файлом и дальше продолжайте работу. Потом еще 50-100 страниц — опять сохраните отдельным файлом. В этом случае, если в конце с документом возникнет какая-то проблема, тогда у вас всегда будут работающие копии на руках.

У меня есть требование обновить файлы конфигурации с аргументами, предоставленными командной строкой, по какой-то причине файл не обновляется, поэтому я написал небольшое служебное приложение на С#, которое будет запущено msiexec. Цель состоит в том, чтобы получить параметры командной строки для этого приложения, чтобы оно открывало файл конфигурации и обновляло его в процессе установки.

Мое приложение было выполнено нормально, но при попытке прочитать параметры командной строки родительского процесса (msiexec) я получаю что-то вроде C:windowsmsiexec /V, а не те, которые я указываю в командной строке msiexec (я даже не использую /V)

Любые идеи о том, что может быть проблемой? Если у вас есть лучший способ справиться с этим, пожалуйста, предложите.

Спасибо.

Обновление:
Извините за путаницу, я использовал установщик WiX и запускал сгенерированный WiX .msi в командной строке, как показано ниже, например.

C:> msiexec /I foo.msi ARG1="v1" ARG2="v2" 

ARG1 и ARG2 определены в сценарии установки Wix.

Я ищу способ получить доступ к параметрам командной строки ARG1="v1", ARG2="V" небольшим приложением, которое будет запущено msiexec (приложение указано в сценарии установщика Wix как пользовательское действие).

В идеале, когда я использую xmlFile (также пробовал xmlConfig), мой сценарий установки WiX должен иметь возможность обновлять мои файлы конфигурации с помощью v1, v2, но этого не происходит, поэтому написал приложение, которое должно иметь возможность читать v1 и v2 и записывать в файл конфигурации.

Используя xmlFile, я получаю следующую ошибку:

ExecXmlFile: ошибка 0x8007006e: не удалось загрузить XML-файл: ошибка 25531. Не удалось открыть XML-файл, системная ошибка: -2147024786 MSI (s) (E4!54) [18:11:36:714]: Продукт: — Ошибка 25531 , Не удалось открыть файл XML, системная ошибка: -2147024786 –

Не получает никакой значимой информации. Я использовал аргумент msiexec /l*v для создания журнала.


Отрывок из журнала:

На самом деле xmlFile должен выполнять мое требование, но при его использовании я получаю следующую ошибку. Любая помощь по этому вопросу будет принята с благодарностью.

MSI (s) (E4:00) [18:11:32:110]: Executing op: ActionStart(Name=ExecXmlFile,,) Action 18:11:32: ExecXmlFile.
MSI (s) (E4:00) [18:11:32:111]: Executing op: CustomActionSchedule(Action=ExecXmlFile,ActionType=3073,Source=BinaryData,Target=ExecXmlFile,CustomActionData=1030//cloudRecognition/connectiontype130//cloudRecognition/connectionaddress192.168.128.59;192.168.128.261030//cloudRecognition/connectionport50001;50001)
MSI (s) (E4:DC) [18:11:32:113]: Invoking remote custom action. DLL: C:WindowsInstallerMSIA419.tmp, Entrypoint: ExecXmlFile
MSI (s) (E4:EC) [18:11:32:113]: Generating random cookie.
MSI (s) (E4:EC) [18:11:32:115]: Created Custom Action Server with PID 10104 (0x2778).
MSI (s) (E4:68) [18:11:32:402]: Running as a service.
MSI (s) (E4:68) [18:11:32:403]: Hello, I'm your 32bit Elevated custom action server.
ExecXmlFile:  Error 0x8007006e: failed to load XML file:
Error 25531. Failed to open XML file , system error: -2147024786
MSI (s) (E4!54) [18:11:36:714]: Product:  -- Error 25531. Failed to open XML file , system error: -2147024786

CustomAction ExecXmlFile вернул фактический код ошибки 1603 (обратите внимание, что это может быть не на 100 %, если перевод выполнялся внутри песочницы).

Вы передаете аргументы как свойства MSI? Если да, то вы можете прочитать их из базы данных MSI. Проверь это:

http://www.alteridem.net/2008/05/20/read-properties-from-an-msi-file/

Я предполагаю, что вы устанавливаете свойства приложения, специфичные для среды, в файл конфигурации? Если да, то почему бы вам не определить все свойства в файле конфигурации и не сделать приложение достаточно умным, чтобы считывать правильные свойства (путем проверки среды)? Я бы сделал это.

Приведенные выше комментарии основаны только на предоставленной вами ограниченной информации. У вас были бы свои причины для этого :)


1

Alexey Ivanov
11 Ноя 2012 в 13:16

Мне кажется, вам нужно добавить CustomAction в процесс установки. Вам могут понадобиться оба или только один, в зависимости от вашего запроса.

  1. Чтобы обновить файлы конфигурации, вы можете использовать XmlFile CustomAction, чтобы изменить любой файл XML.
  2. Чтобы запустить пользовательское действие Quiet Execution

Я считаю, что это позволит вам изменить значения файла конфигурации во время установки. Вы можете найти хорошее введение в CustomActions и их типы здесь. Взгляните на CustomAction типа 2.

Изменить для следующего вопроса в разделе «Ответ»:

Когда планируется запустить ЦС в процессе установки?
У вас есть лог-файл для установки?

Редактировать повторно

Без кода или дополнительной информации о процессе установки я не могу больше помочь.

Полезной информацией будет:

  1. Где в последовательности установки запускается ваш ЦС?
  2. Какой элемент WiX вы используете для изменения значений в вашем файле.
  3. Вы пытались создать установщик, который выполняет только ту часть, с которой у вас возникли проблемы, чтобы изолировать поведение.


1

Alexey Ivanov
11 Ноя 2012 в 13:28

I am moving from a Wise Installer to WIX and am using the util:xmlfile to update a configuration xml file.

This works.

<Component Id="config" Guid="*">
  <File Id="config" Source="..\Source\Desktop\prodconfig.xml" KeyPath="yes" Vital="yes" />
    <util:XmlFile 
      Id="_PORT_" File="[INSTALLDIR]prodconfig.xml"  
      Action="setValue" 
      Name="Port" Value="[PORT]" 
      ElementPath="//Configuration/CommConnectionPools/CommConnectionPool" 
      Sequence='1' />
  </File>
</Component>

This does not work.

<Component Id="config" Guid="*">
  <File Id="config" Source="..\Source\Desktop\prod-config.xml" KeyPath="yes" Vital="yes" />
    <util:XmlFile 
      Id="_PORT_" File="[INSTALLDIR]prod-config.xml"  
      Action="setValue" 
      Name="Port" Value="[PORT]" 
      ElementPath="//Configuration/CommConnectionPools/CommConnectionPool" 
      Sequence='1' />
  </File>
</Component>

When the .msi executes with the first component, everything is fine. In the second version, an error is returned «Error 25531. Failed to open XML file…»

As far as I can tell the only difference is the hyphen in the file name.

Any suggestions as to what the difference might be?

asked Nov 5, 2013 at 19:10

Val's user avatar

3

Try using the file’s id instead of hard-coding the name

[#config] //which will refer to the File Id

instead of

[INSTALLDIR]prod-config.xml

answered Feb 16, 2014 at 1:40

Chris Bednarski's user avatar

2

The value for the File attribute for util:XmlFile tag should refer to the Id attribute for the File tag.

In your case this would be

<Component Id="config" Guid="*">
  <File Id="config" Source="..\Source\Desktop\prod-config.xml" KeyPath="yes" Vital="yes" />
    <util:XmlFile 
      Id="_PORT_" File="[#config]"  
      Action="setValue" 
      Name="Port" Value="[PORT]" 
      ElementPath="//Configuration/CommConnectionPools/CommConnectionPool" 
      Sequence='1' />
  </File>
</Component>

In your example since you use the same identifier for both the Component tag and the File tag it doesn’t matter. But in general you need to use the Id for the File tag.

To clarify, if your example used configComponent and configFile respectively for Component and File identifiers. It would look like the following:

<Component Id="configComponent" Guid="*">
  <File Id="configFile" Source="..\Source\Desktop\prod-config.xml" />
    <util:XmlFile 
      Id="_PORT_" File="[#configFile]"  
[snip]
     />
  </File>
</Component>

answered Mar 21, 2018 at 3:15

Jade's user avatar

JadeJade

3,1661 gold badge34 silver badges44 bronze badges

Вопрос:

Я перехожу из Wise Installer в WIX и использую утилиту xmlfile для обновления конфигурационного xml файла.

Это работает.

<Component Id="config" Guid="*">
<File Id="config" Source="..\Source\Desktop\prodconfig.xml" KeyPath="yes" Vital="yes" />
<util:XmlFile
Id="_PORT_" File="[INSTALLDIR]prodconfig.xml"
Action="setValue"
Name="Port" Value="[PORT]"
ElementPath="//Configuration/CommConnectionPools/CommConnectionPool"
Sequence='1' />
</File>
</Component>

Это не работает.

<Component Id="config" Guid="*">
<File Id="config" Source="..\Source\Desktop\prod-config.xml" KeyPath="yes" Vital="yes" />
<util:XmlFile
Id="_PORT_" File="[INSTALLDIR]prod-config.xml"
Action="setValue"
Name="Port" Value="[PORT]"
ElementPath="//Configuration/CommConnectionPools/CommConnectionPool"
Sequence='1' />
</File>
</Component>

Когда .msi выполняется с первым компонентом, все в порядке. Во второй версии возвращается ошибка “Ошибка 25531. Не удалось открыть файл XML…”

Насколько я могу судить, единственным отличием является дефис в имени файла.

Любые предложения относительно того, какая разница может быть?

Лучший ответ:

Попробуйте использовать идентификатор компонента вместо жесткого кодирования имени

[#config] //which will refer to the File Id

вместо

[INSTALLDIR]prod-config.xml

Ответ №1

Значение атрибута File для тега util:XmlFile должно относиться к атрибуту Id для тега File.

В вашем случае это будет

<Component Id="config" Guid="*">
<File Id="config" Source="..\Source\Desktop\prod-config.xml" KeyPath="yes" Vital="yes" />
<util:XmlFile
Id="_PORT_" File="[#config]"
Action="setValue"
Name="Port" Value="[PORT]"
ElementPath="//Configuration/CommConnectionPools/CommConnectionPool"
Sequence='1' />
</File>
</Component>

В вашем примере, поскольку вы используете один и тот же идентификатор для тега Component и тега File, это не имеет значения. Но в целом вам нужно использовать Id для тега File.

Чтобы уточнить, использовали ли ваш пример configComponent и configFile для Component и File идентификаторов. Он будет выглядеть следующим образом:

<Component Id="configComponent" Guid="*">
<File Id="configFile" Source="..\Source\Desktop\prod-config.xml" />
<util:XmlFile
Id="_PORT_" File="[#configFile]"
[snip]
/>
</File>
</Component>

PC-PORTAL

МЕНЮ

Обновлено: 21.09.2023

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Ошибка 25531 не удалось открыть xml файл

Читайте также:

      

  • Принтер samsung xpress c460w не захватывает бумагу
  •   

  • Установщик windows 7 не видит жесткий диск ide
  •   

  • Повелитель бурь dark souls 3 как пользоваться на клавиатуре


WIX не срабатывает XmlFile при сетевой установке

От:

m-Dima

Россия

 
Дата:  03.03.11 14:21
Оценка:

привет, all!
помогите, плиз…

есть проект инсталятора на Wix 3.5
там есть такие строки

<Fragment>
    <DirectoryRef Id="INSTALLLOCATION" FileSource="С:\myApp\" DiskId="1">
      
      <Component Id="component0" Guid="D31F130C-3859-46DD-BAED-63B1D11C54E5" DiskId="1" KeyPath="yes">
        
        <File Id="file1" Name="myApp.exe"/>
        <File Id="AppConfig" Name="myApp.exe.config"/>

        <util:XmlConfig
            Id="xmlDelete"
            File="[#AppConfig]"
            Action="delete"
            ElementPath="/configuration/userSettings/mySettings/setting[\[] @name='ServerHost' [\]]"
            On="install"
            Sequence="1"/>

        <util:XmlFile
            Id="xmlChange"
            File="[#AppConfig]"
            Action="setValue"
            ElementPath="/configuration/userSettings/mySettings/setting[\[] @name='ServerHost' [\]]/value"
            Value="[ADDRESS_HOST]"
            Permanent="no"
            SelectionLanguage="XPath"
            Sequence="2"/>
и т.д.

запускаю msi-файл — с интерактивными диалогами на локальную машину все работает прекрасно, нужный параметр xml-файла обновляется, о чем в логе и пишется…

запускаю сетевую установку без участия пользователя:
msiexec /a InstallerWix.msi /q /l*vx %logFile% ROOTDRIVE=»\\127.0.0.1\Public\» ADDRESS_HOST=»%addressHost%»

проект разворачивается правильно и где надо, но XmlConfig и XmlFile не срабатывают… о них даже даже нет упоминания в логе…

как заставить их работать при сетевой установке?
заранее спасибо…


Re: WIX не срабатывает XmlFile при сетевой установке

От:

bnk

СССР

http://unmanagedvisio.com/
Дата:  04.03.11 05:27
Оценка:

Здравствуйте, m-Dima, Вы писали:

MD>запускаю сетевую установку без участия пользователя:

MD>msiexec /a InstallerWix.msi /q /l*vx %logFile% ROOTDRIVE=»\\127.0.0.1\Public\» ADDRESS_HOST=»%addressHost%»

msiexec /a

Это не установка в прямом смысле слова, а выкладывание всех файлов содержащихся в инсталляторе, в заданную папку (т.н. «административная установка», или создание административного образа). При этом обычно не производится больше никаких действий, т.е. просто тупо выдергиваются файлы из пакета и складываются в заданную папку.
Установка это обычно:

msiexec /i

Принципиально, выполнение действия по изменению xml файла можно добавить также во время административной установки. Однако имей в виду, что административная установка предполагает, что потом пользователи сделают еще одну, обычную установку из образа, созданного адаминистратором. Т.е. может оказаться что твое действие будет выполнено дважды — первый раз во время «административной установки» и второй раз, когда пользователь ставит программу себе из административного образа.

Если тебе это не важно, то чтобы включить действие по изменению xml-файлов в последовательность действий,
выполняемых при административной установке, можно сделать так (добавить это в <Product>):

    <AdminExecuteSequence>
      <Custom Action="SchedXmlFile" After="InstallFiles" />
    </AdminExecuteSequence>


Re[2]: WIX не срабатывает XmlFile при сетевой установке

От:

m-Dima

Россия

 
Дата:  04.03.11 09:49
Оценка:

Здравствуйте, bnk, Вы писали:

bnk>Здравствуйте, m-Dima, Вы писали:


MD>>запускаю сетевую установку без участия пользователя:

MD>>msiexec /a InstallerWix.msi /q /l*vx %logFile% ROOTDRIVE=»\\127.0.0.1\Public\» ADDRESS_HOST=»%addressHost%»

bnk>msiexec /a


bnk>Это не установка в прямом смысле слова, а выкладывание всех файлов содержащихся в инсталляторе, в заданную папку (т.н. «административная установка», или создание административного образа). При этом обычно не производится больше никаких действий, т.е. просто тупо выдергиваются файлы из пакета и складываются в заданную папку.

bnk>Установка это обычно:

bnk>msiexec /i


bnk>Принципиально, выполнение действия по изменению xml файла можно добавить также во время административной установки. Однако имей в виду, что административная установка предполагает, что потом пользователи сделают еще одну, обычную установку из образа, созданного адаминистратором. Т.е. может оказаться что твое действие будет выполнено дважды — первый раз во время «административной установки» и второй раз, когда пользователь ставит программу себе из административного образа.


bnk>Если тебе это не важно, то чтобы включить действие по изменению xml-файлов в последовательность действий,

bnk>выполняемых при административной установке, можно сделать так (добавить это в <Product>):

bnk>

bnk>    <AdminExecuteSequence>
bnk>      <Custom Action="SchedXmlFile" After="InstallFiles" />
bnk>    </AdminExecuteSequence>
bnk>


большое спасибо за разъяснение и подсказку
с этими строчками xml-обработка пытается выполнится, но… возникает ошибка:

ExecXmlFile: Error 0x80070005: failed to load XML file: 127.0.0.1\public\myApp\myApp.exe.config
MSI (s) (D0!9C) [12:18:06:208]: Продукт: Apollo.Net — Ошибка 25531. Не удалось открыть XML файл 127.0.0.1\public\myApp\myApp.exe.config, ошибка: -2147024891

судя по всему, по доступу, хотя непонятно с чего…
в общем, меня устроило бы и msiexec /i… даже лучше… но не получается передать в параметрах сетевой путь… почему-то он не воспринимается…


Re[3]: WIX не срабатывает XmlFile при сетевой установке

От:

bnk

СССР

http://unmanagedvisio.com/
Дата:  06.03.11 07:24
Оценка:

Здравствуйте, m-Dima, Вы писали:

MD>

MD>ExecXmlFile: Error 0x80070005: failed to load XML file: 127.0.0.1\public\myApp\myApp.exe.config
MD>MSI (s) (D0!9C) [12:18:06:208]: Продукт: Apollo.Net — Ошибка 25531. Не удалось открыть XML файл 127.0.0.1\public\myApp\myApp.exe.config, ошибка: -2147024891


MD>судя по всему, по доступу, хотя непонятно с чего…
MD>в общем, меня устроило бы и msiexec /i… даже лучше… но не получается передать в параметрах сетевой путь… почему-то он не воспринимается…

Похоже прав на запись нету.
Дело в том что Windows Installer (MSI) выполняет установку не из-под текущего пользователя, а из под учетной записи SYSTEM (т.е. от имени текущего компьютера, а не текущего пользователя. А у SYSTEM обычно есть права только на текущий компьютер. Если компьютер который производит установку, входит в домен, можно попробовать разрулить это два ему права на запись в ту папку куда производится установка.

Но вообще обычно с одного компьютера на другой программы не ставят. То есть, MSI не заточен под такой сценарий.
Кстати, зачем тебе это вообще?


Re[4]: WIX не срабатывает XmlFile при сетевой установке

От:

m-Dima

Россия

 
Дата:  06.03.11 09:04
Оценка:

Здравствуйте, bnk, Вы писали:

bnk>Здравствуйте, m-Dima, Вы писали:


MD>>

MD>>ExecXmlFile: Error 0x80070005: failed to load XML file: 127.0.0.1\public\myApp\myApp.exe.config
MD>>MSI (s) (D0!9C) [12:18:06:208]: Продукт: Apollo.Net — Ошибка 25531. Не удалось открыть XML файл 127.0.0.1\public\myApp\myApp.exe.config, ошибка: -2147024891


MD>>судя по всему, по доступу, хотя непонятно с чего…
MD>>в общем, меня устроило бы и msiexec /i… даже лучше… но не получается передать в параметрах сетевой путь… почему-то он не воспринимается…

bnk>Похоже прав на запись нету.

bnk>Дело в том что Windows Installer (MSI) выполняет установку не из-под текущего пользователя, а из под учетной записи SYSTEM (т.е. от имени текущего компьютера, а не текущего пользователя. А у SYSTEM обычно есть права только на текущий компьютер. Если компьютер который производит установку, входит в домен, можно попробовать разрулить это два ему права на запись в ту папку куда производится установка.

bnk>Но вообще обычно с одного компьютера на другой программы не ставят. То есть, MSI не заточен под такой сценарий.

bnk>Кстати, зачем тебе это вообще?
ну, в общем, уже незачем…
была попытка реализовать установку на клиента от имени администратора сервера, но админы сказали, что так не надо — будут запускать от имени клиента…
с помощью microsoft system center manager
так что вопрос закрыт, спасибо за разъяснение…

Подождите ...

Wait...

  • Переместить
  • Удалить
  • Выделить ветку

Пока на собственное сообщение не было ответов, его можно удалить.

Понравилась статья? Поделить с друзьями:
  • Ошибка 258 виндовс 10
  • Ошибка 255 тврп
  • Ошибка 257e00 bmw
  • Ошибка 255 сканер
  • Ошибка 255 при запуске net usershare ubuntu