Пошаговое руководство. Развертывание документа в локальной папке и сборки в сетевой папке (система 2003)
Обновлен: Ноябрь 2007
Применимость |
---|
Сведения в данном разделе относятся только к указанным проектам Visual Studio Tools for Office и версиям приложений Microsoft Office. Тип проекта
Версия Microsoft Office
Дополнительные сведения см. в разделе Доступность функций по типам приложений и проектов. |
В этом пошаговом руководстве описывается порядок развертывания настройки уровня документа так, что документ располагается на компьютере разработчика, а сборка — в папке на сетевом компьютере. Этот тип развертывания называется локально-сетевой моделью развертывания.
Дополнительные сведения о развертывании решения см. в разделе Модели развертывания (система 2003). Дополнительные сведения о настройках уровня документа см. в разделе Архитектура настроек на уровне документа.
В этом пошаговом руководстве рассматриваются следующие задачи:
изменение встроенного в документ манифеста приложения с указанием на сборку;
предоставление полного доверия сборке решения Visual Studio Tools for Office, расположенной в сетевой папке.
Обязательные компоненты
Для выполнения этого пошагового руководства необходимы следующие компоненты:
Visual Studio Tools for Office (необязательный компонент Visual Studio 2008 Professional и Visual Studio Team System);
Microsoft Office Word 2003 или Microsoft Office Excel 2003.
Примечание. В этом руководстве предполагается, что пользователь осуществляет развертывание решения Word. Чтобы выполнить это руководство для решения Excel, замените во всех примерах кода имя проекта Word на имя проекта Excel.
доступ к сетевому компьютеру для проведения развертывания;
права администратора на компьютере разработчика, позволяющие настроить политику безопасности.
Создание решения для развертывания
На первом этапе необходимо создать базовое решение Visual Studio Tools for Office для последующего развертывания. Если развертываемое решение уже создано, пропустите раздел "Создание решения для развертывания" и перейдите к разделу "Изменение встроенного манифеста приложения".
Создание решения для развертывания
Создайте проект документа Word с именем WordDeployment, используя шаблон проекта для Office 2003.
В мастере выберите Создать новый документ. Дополнительные сведения см. в разделе Практическое руководство. Создание проектов Visual Studio Tools for Office.
В Обозревателе решений щелкните правой кнопкой мыши файл кода ThisDocument и выберите в меню пункт Перейти к коду.
В обработчик событий ThisDocument_Startup добавьте следующий код. В этом коде при открытии документа отображается сообщение об успешном развертывании решения.
MessageBox.Show("The deployment is successful")
MessageBox.Show("The deployment is successful");
Дополнительные сведения о событии Startup см. в разделе Инструменты Visual Studio для событий проекта Office.
Нажмите клавишу F5 для построения и выполнения проекта. Убедитесь, что появилось ожидаемое сообщение.
Закройте приложение Word.
Закройте решение в Visual Studio.
Убедитесь, что документ не открыт в экземпляре приложения Word или конструкторе проекта. Если документ открыт, на следующем шаге не удастся получить доступ к нему с помощью класса ServerDocument.
Изменение встроенного манифеста приложения
При построении решения предполагается, что документ и сборка находятся в одной папке. Путь к сборке сохраняется во встроенном в документ манифесте приложения. Если документ и сборка развертываются в разных папках, необходимо изменить встроенный манифест приложения, указав в нем новый путь к сборке.
На следующем этапе с помощью класса ServerDocument будет выполнено изменение встроенного в документ манифеста приложения с указанием нового пути к сборке настройки. Код, в котором используется класс ServerDocument для изменения встроенного манифеста приложения, должен находиться вне сборки проекта Visual Studio Tools for Office, связанной с развертываемым документом.
Изменение встроенного манифеста приложения
Создайте новый проект консольного приложения. Дополнительные сведения см. в разделе Практическое руководство. Создание решений и проектов.
Добавьте в новый проект ссылку на сборку Microsoft.VisualStudio.Tools.Applications.Runtime.dll.
Добавьте операторы using (C#) или Imports (Visual Basic) в начало файла кода Program.cs или Module1.vb:
Imports Microsoft.VisualStudio.Tools.Applications.Runtime
using Microsoft.VisualStudio.Tools.Applications.Runtime;
Чтобы обновить встроенный манифест приложения, добавьте следующий код в метод Main. Замените строку full document path на полный путь к документу в расположении для построения на компьютере разработчика, например папка проекта\bin\debug\WordDeployment.doc. Замените строку full assembly path на полный путь к сборке в сетевой папке, в которой будет развернута сборка, например \\DeploymentServer\DeploymentFolder\WordDeployment.dll.
Dim sd As ServerDocument = Nothing Try sd = New ServerDocument("full document path") sd.AppManifest.Dependency.AssemblyPath = _ "full assembly path" sd.Save() Finally If Not sd Is Nothing Then sd.Close() End If End Try
ServerDocument sd = null; try { sd = new ServerDocument(@"full document path"); sd.AppManifest.Dependency.AssemblyPath = @"full assembly path"; sd.Save(); } finally { if (sd != null) { sd.Close(); } }
Выполните построение и запуск проекта. В консольном приложении выполняется обновление пути к сборке во встроенном манифесте приложения, после чего работа приложения завершается.
Закройте проект консольного приложения.
Развертывание решения
После установки правильных путей можно развернуть документ в папке на компьютере разработчика, а сборку — в папке на сетевом компьютере.
Развертывание решения
Создайте папку с именем TestDeployDocument в корневом каталоге системного диска Windows (%SystemDrive%). Например, для системного диска C это будет папка C:\TestDeployDocument.
Создайте на сетевом компьютере папку с именем DeploymentFolder и предоставьте себе общий доступ к этой папке. Например, если сетевой компьютер называется DeploymentServer, путь к новой общей сетевой папке будет \\DeploymentServer\DeploymentFolder. Убедитесь, что общая сетевая папка имеет то же самое имя, которое было задано вместо строки full assembly path при изменении встроенного манифеста приложения на предыдущем шаге.
Скопируйте документ из выходной папки построения проекта (как правило, это папка проекта\bin\debug или папка проекта\bin\release) в папку %SystemDrive%\TestDeployDocument на компьютере разработчика.
Скопируйте сборку из выходной папки построения проекта в общую сетевую папку \\DeploymentServer\DeploymentFolder.
Откройте документ, сохраненный в папке %SystemDrive%\TestDeployDocument на компьютере разработчика. Отображается сообщение об ошибке, в котором сообщается, что в соответствии с текущей политикой безопасности .NET выполнение данной настройки не допускается. Это связано с тем, что сборке, находящейся в общей сетевой папке, не предоставлено полное доверие.
Нажмите кнопку ОК и закройте документ.
Настройка политики безопасности
Чтобы разрешить выполнение решения, необходимо предоставить полное доверие сборке, настроив соответствующим образом политику безопасности платформы .NET Framework 2.0. В этом руководстве полное доверие сборке предоставляется с помощью средства настройки политики управления доступом для кода (Caspol.exe). Дополнительные сведения о работе с Caspol.exe см. в разделах Средство настройки политики управления доступом для кода (Caspol.exe) и Настройка политики безопасности с помощью средства для настройки политики управления доступом для кода (Caspol.exe).
Примечание о безопасности. |
---|
Чтобы завершить это руководство, выполните следующие шаги по настройке политики безопасности на основе свидетельства URL-адреса. Не используйте описываемый метод для предоставления полных прав сборкам в реальных решениях, если есть сомнения в том, что их расположение надежно и безопасно. Для реальных решений рекомендуется использовать политику безопасности, основанную на более значимых, чем URL-адрес сборки, свидетельствах. Дополнительные сведения см. в разделе Требования безопасности при выполнении решений Office (для системы 2003). |
Предоставление полного доверия сборке
Для создания новой группы кода, в которой предоставляется полное доверие сборке, введите в командной строке следующую команду:
%windir%\Microsoft.NET\Framework\v2.0.50727\caspol -m -ag LocalIntranet_Zone -url "full assembly path" FullTrust -n "Test_Deployment_Assembly"
Замените строку full assembly path на полный путь к сборке в сетевой папке, например \\DeploymentServer\DeploymentFolder\WordDeployment.dll.
Параметр -n задает имя новой группы кода. Этот параметр является необязательным и используется для упрощения идентификации и удаления новой группы кода по завершении этого пошагового руководства.
В ответ на запрос о подтверждении выполнения операции введите yes и нажмите клавишу ВВОД.
Откройте документ, расположенный в папке %SystemDrive%\TestDeployDocument на компьютере разработчика, и убедитесь, что отображается соответствующее сообщение.
Следующие действия
Допускается одновременное развертывание документа и сборки в локальных папках или в сетевой папке. Дополнительные сведения см. в следующих пошаговых руководствах:
Пошаговое руководство. Развертывание документа и сборки в локальной папке (система 2003)
Пошаговое руководство. Развертывание документа и сборки в разные локальные папки (система 2003)
Пошаговое руководство. Развертывание документа и сборки в сетевой папке (система 2003)
См. также
Задачи
Пошаговое руководство. Развертывание документа и сборки в локальной папке (система 2003)
Пошаговое руководство. Развертывание документа и сборки в разные локальные папки (система 2003)
Пошаговое руководство. Развертывание документа и сборки в сетевой папке (система 2003)
Основные понятия
Развертывание решений Office (система 2003)