(заключительная цитата на

аюсь создать проект установки для службы Windows. Я следовал инструкциям наhttp://support.microsoft.com/kb/816169 создать проект установки без проблем.

Я хочу иметь возможность получить значение во время установки, чтобы обновить app.config с желаемыми настройками пользователя. Я добавилТекстовые поля (А) диалог для получения значений. Я установилEdit1Property свойство "TIMETORUN", и в моих действиях основного выводаCustomActionData Свойство я положил в следующее:/ TimeToRun = "[TIMETORUN] \", Все идет нормально. Запустив установку, я могу получитьTimeToRun значение изContext.Parameters Коллекция без проблем.

Для того, чтобы найти app.config мне нужно также передать значениеTARGETDIR Свойство установщика Windows для моего настраиваемого действия. Здесь вещи начинают разваливаться. Чтобы достичь этого, вышеCustomActionData должен быть изменен так:/ TimeToRun = "[TIMETORUN] \" / TargetDir = "[TARGETDIR] \", Теперь, когда я запускаю установку, я получаю следующее сообщение об ошибке:

Ошибка 1001. Исключительная ситуация при инициализации установки. System.IO.FileNotFoundException: Не удалось загрузить файл или сборку 'file: /// C: \ Windows \ SysWOW64 \ Files' или одну из ее зависимостей. Система не может найти указанный файл.

Если вы решите эту проблему, вы неизбежно найдете людей с огромным успехом, просто добавив косую черту в/ TargetDir = "[TARGETDIR] \" частьCustomActionData, Это, к сожалению, не решает мою проблему.

Я пробовал так много разных вариацийCustomActionData Строка и ни один из них не работал. Я попытался войти в файл из моего переопределенногоустанавливать метод, чтобы определить, где была поломка, но файл журнала не создается, потому что он даже не зашел так далеко. Как указывает ошибка, сбой происходит на этапе инициализации.

Я догадываюсь, что это может быть одна из зависимостей, которые пытается загрузить проект установки. Возможно, что-то добавляется кCustomActionData строка и не играет хорошо сTARGETDIR значение (которое содержит пробелы, то есть "C: \ Program Files \ My Company \ Project Name"). Опять же, это еще одна догадка, которую я не могу подтвердить из-за моей неспособности отладить процесс установки.

Еще одна вещь, которую стоит упомянуть, и да, это еще одна догадка, может ли это быть проблемой с установочными проектами в 64-битной версии Windows? Я использую Windows 7 Professional.

Я предоставлю имена зависимостей на случай, если это поможет:

Microsoft .NET FrameworkMicrosoft.SqlServer.DtsMsg.dllMicrosoft.SqlServer.DTSPipelineWrap.dllMicrosoft.SqlServer.DTSRuntimeWrap.dllMicrosoft.SQLServer.ManagedDTS.dllMicrosoft.SqlServer.msxml6_interop.dllMicrosoft.SqlServer.PipelineHost.dllMicrosoft.SqlServer.SqlTDiagM.dll

Как вы можете выяснить из зависимостей, служба Windows планирует вызов пакета DTSX.

Извините за долгую напыщенную речь. Спасибо за любую помощь, которую вы можете предоставить.

Ответы на вопрос(0)

Ваш ответ на вопрос