Поделиться через


Элемент <file> (приложение ClickOnce)

Определяет все не являющиеся сборками файлы, загружаемые и используемые приложением.

<file
    name
    size
    group
    optional
    writeableType
>
    <typelib
        tlbid
        version
        helpdir
        resourceid
        flags
    />
    <comClass
        clsid
        description
        threadingModel
        tlbid
        progid
        miscStatus
        miscStatusIcon
        miscStatusContent
        miscStatusDocPrint
        miscStatusThumbnail
    />
    <comInterfaceExternalProxyStub
        iid
        baseInterface
        numMethods
        name
        tlbid
        proxyStubClass32
    />
    <comInterfaceProxyStub
        iid
        baseInterface
        numMethods
        name
        tlbid
        proxyStubClass32
    />
    <windowClass
        versioned
    />
</file>

Элементы и атрибуты

Элемент file является необязательным. Элемент имеет следующие атрибуты.

Атрибут

Описание

name

Обязательный. Задает имя файла.

size

Обязательный. Задает размер файла (в байтах).

group

Необязателен, если атрибут optional не задан или имеет значение false; обязателен, если атрибут optional имеет значение true. Название группы, к которой принадлежит файл. Имя может быть любым строковым значением Юникода, выбранным разработчиком, и используется для загрузки файлов по запросу с классом ApplicationDeployment.

optional

Необязательный. Указывает, загружается ли файл при первом запуске приложения, или файл хранится на сервере до тех пор, пока его не запросит приложение. Если атрибут имеет значение false или его значение не определено, файл загружается при первом запуске или при установке приложения. Если true, то необходимо указать group, чтобы манифест приложения был допустимым. optional не может иметь значение "true", если для writeableType задано значение applicationData.

writeableType

Необязательный. Указывает, является ли файл файлом данных. Единственным допустимым значением является applicationData.

typelib

Элемент typelib является необязательным и дочерним для элемента file. Элемент описывает библиотеку типов, принадлежащую компоненту COM. Элемент имеет следующие атрибуты.

Атрибут

Описание

tlbid

Обязательный. GUID, назначенный библиотеке типов.

version

Обязательный. Номер версии библиотеки типов.

helpdir

Обязательный. Каталог, содержащий файлы справки для компонента. Может быть пустым.

resourceid

Необязательный. Шестнадцатеричная строка, представляющая код языка (LCID). От одной до четырех шестнадцатеричных цифр без префикса 0x и без предшествующих нулей. Код языка (LCID) может иметь независимый идентификатор варианта языка.

flags

Необязательный. Строка, представляющая флаги библиотеки типов. Это может быть один из следующих флагов: "RESTRICTED", "CONTROL", "HIDDEN" и "HASDISKIMAGE".

comClass

Элемент comClass является необязательным и дочерним для элемента file. Однако если приложение ClickOnce содержит компонент COM, предназначенный для развертывания с помощью COM-взаимодействия без регистрации, использование элемента comClass является обязательным. Элемент имеет следующие атрибуты.

Атрибут

Описание

clsid

Обязательный. Идентификатор класса компонента COM в форме GUID.

description

Необязательный. Имя класса.

threadingModel

Необязательный. Потоковая модель, используемая внутрипроцессными COM-классами. Если этот атрибут имеет значение NULL, потоковая модель не используется. Компонент создается на основном потоке клиента и вызывается из других потоков, маршалируемых этим потоком. Допустимые значения приведены в следующем списке:

Apartment, Free, Both и Neutral.

tlbid

Необязательный. GUID для библиотеки типов для данного компонента COM.

progid

Необязательный. Зависящий от версии программы идентификатор, связанный с COM-компонентом. Формат атрибута ProgID задается по схеме <vendor>.<component>.<version>.

miscStatus

Необязательный. Повторяет в манифесте сборки информацию из раздела реестра MiscStatus. Если значения атрибутов miscStatusIcon, miscStatusContent, miscStatusDocprint или miscStatusThumbnail не найдены, используются соответствующие значения по умолчанию из списка miscStatus. Значения должны быть представлены в виде списка значений атрибутов, разделенного запятыми. Этот атрибут можно использовать, если COM-класс является OCX-классом, требующим значения раздела реестра MiscStatus.

miscStatusIcon

Необязательный. Повторяет в манифесте сборки информацию из аспекта DVASPECT_ICON. Представляет значок объекта. Значения должны быть представлены в виде списка значений атрибутов, разделенного запятыми. Этот атрибут можно использовать, если COM-класс является OCX-классом, требующим значения раздела реестра Miscstatus.

miscStatusContent

Необязательный. Повторяет в манифесте сборки информацию из аспекта DVASPECT_CONTENT. Представляет составные документы, выводимые на экран или принтер. Значения должны быть представлены в виде списка значений атрибутов, разделенного запятыми. Этот атрибут можно использовать, если COM-класс является OCX-классом, требующим значения раздела реестра MiscStatus.

miscStatusDocPrint

Необязательный. Повторяет в манифесте сборки информацию из аспекта DVASPECT_DOCPRINT. Представляет отображение объекта на экране так, как оно было бы напечатано на принтере. Значения должны быть представлены в виде списка значений атрибутов, разделенного запятыми. Этот атрибут можно использовать, если COM-класс является OCX-классом, требующим значения раздела реестра MiscStatus.

miscStatusThumbnail

Необязательный. Повторяет в манифесте сборки информацию из аспекта DVASPECT_THUMBNAIL. Представляет эскизы объектов, отображаемые в средствах просмотра. Значения должны быть представлены в виде списка значений атрибутов, разделенного запятыми. Этот атрибут можно использовать, если COM-класс является OCX-классом, требующим значения раздела реестра MiscStatus.

comInterfaceExternalProxyStub

Элемент comInterfaceExternalProxyStub является необязательным и дочерним для элемента file. Однако если приложение ClickOnce содержит компонент COM, предназначенный для развертывания с помощью COM-взаимодействия без регистрации, использование элемента comClass является обязательным. Элемент содержит следующие атрибуты.

Атрибут

Описание

iid

Обязательный. IID интерфейса, обслуживаемого этим прокси-сервером. IID должен быть заключен в фигурные скобки.

baseInterface

Необязательный. IID интерфейса, из которого ссылается производный интерфейс iid.

numMethods

Необязательный. Число методов, реализованных в интерфейсе.

name

Необязательный. Имя интерфейса, отображаемое в коде.

tlbid

Необязательный. Библиотека типов, содержащая описание интерфейса, указанная в атрибуте iid.

proxyStubClass32

Необязательный. Отображение IID в код CLSID в 32-битных прокси-библиотеках.

comInterfaceProxyStub

Элемент comInterfaceProxyStub является необязательным и дочерним для элемента file. Однако если приложение ClickOnce содержит компонент COM, предназначенный для развертывания с помощью COM-взаимодействия без регистрации, использование элемента comClass является обязательным. Элемент содержит следующие атрибуты.

Атрибут

Описание

iid

Обязательный. IID интерфейса, обслуживаемого этим прокси-сервером. IID должен быть заключен в фигурные скобки.

baseInterface

Необязательный. IID интерфейса, из которого ссылается производный интерфейс iid.

numMethods

Необязательный. Число методов, реализованных в интерфейсе.

Name

Необязательный. Имя интерфейса, отображаемое в коде.

Tlbid

Необязательный. Библиотека типов, содержащая описание интерфейса, указанная в атрибуте iid.

proxyStubClass32

Необязательный. Отображение IID в код CLSID в 32-битных прокси-библиотеках.

threadingModel

Необязательный. Необязательный. Потоковая модель, используемая внутрипроцессными COM-классами. Если этот атрибут имеет значение NULL, потоковая модель не используется. Компонент создается на основном потоке клиента и вызывается из других потоков, маршалируемых этим потоком. Допустимые значения приведены в следующем списке:

Apartment, Free, Both и Neutral.

windowClass

Элемент windowClass является необязательным и дочерним для элемента file. Однако если приложение ClickOnce содержит компонент COM, предназначенный для развертывания с помощью COM-взаимодействия без регистрации, использование элемента comClass является обязательным. Элемент относится к классу окон, определяемых компонентом COM, который должен содержать применимую к нему версию. Элемент содержит следующие атрибуты.

Атрибут

Описание

versioned

Необязательный. Контролирует, содержит ли внутреннее имя класса, используемое при регистрации, версию сборки, содержащую класс окна. Атрибут может принимать значения yes или no. По умолчанию используется значение yes. Значение no должно использоваться только в том случае, если один класс окна определен компонентом, который используется параллельно, и эквивалентным компонентом, не используемым параллельно, и их нужно обрабатывать как один класс. Обратите внимание, что обычные правила регистрации класса применяются только в случае, если удастся зарегистрировать первый компонент, зарегистрированный в классе окна, так как он не содержит версии, применимой к нему.

hash

Элемент hash является необязательным дочерним элементом элемента file. У элемента hash отсутствуют атрибуты.

Для того чтобы гарантировать, что ни один из файлов не был изменен после развертывания, ClickOnce использует алгоритмический хэш всех файлов в приложении в качестве проверки защиты. Если элемент hash не включен, такая проверка выполняться не будет. Поэтому не рекомендуется пропускать элемент hash.

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

dsig:Transforms

Элемент dsig:Transforms является обязательным дочерним элементом элемента hash. У элемента dsig:Transforms отсутствуют атрибуты.

dsig:Transform

Элемент dsig:Transform является обязательным дочерним элементом элемента dsig:Transforms. Элемент dsig:Transform имеет следующие атрибуты.

Атрибут

Описание

Algorithm

Алгоритм, используемый для вычисления дайджеста для этого файла. В настоящее время значением, используемым ClickOnce, может быть только urn:schemas-microsoft-com:HashTransforms.Identity.

dsig:DigestMethod

Элемент dsig:DigestMethod является обязательным дочерним элементом элемента hash. Элемент dsig:DigestMethod имеет следующие атрибуты.

Атрибут

Описание

Algorithm

Алгоритм, используемый для вычисления дайджеста для этого файла. В настоящее время ClickOnce может использовать только значение http://www.w3.org/2000/09/xmldsig#sha1.

dsig:DigestValue

Элемент dsig:DigestValue является обязательным дочерним элементом элемента hash. У элемента dsig:DigestValue отсутствуют атрибуты. Его текстовое значение – это вычисленный хэш для указанного файла.

Заметки

Этот элемент идентифицирует все не являющиеся сборками файлы, которые составляют приложение и, в частности, хэш-значения для проверки файла. Этот элемент также может содержать изолированные данные модели COM, связанные с файлом. При изменении файла необходимо обновить файл манифеста приложения для внесения изменений.

Пример

В следующем примере кода показан элемент file файла манифеста приложения для приложения, развертываемого с помощью ClickOnce.

  <file name="Icon.ico" size="9216">
    <hash>
      <dsig:Transforms>
        <dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
      </dsig:Transforms>
      <dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
      <dsig:DigestValue>lVoj+Rh6RQ/HPNLOdayQah5McrI=</dsig:DigestValue>
    </hash>
  </file>

См. также

Ссылки

Манифест приложения ClickOnce