次の方法で共有


<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 要素は省略可能です。 この要素には、次の属性があります。

属性

Description

name

必ず指定します。 ファイルの名前を指定します。

size

必ず指定します。 ファイルのサイズをバイトの単位で指定します。

group

optional 属性が指定されていないか、false に設定されている場合は省略でき、optional が true に設定されている場合は必ず指定します。 このファイルが属するグループの名前を指定します。 グループの名前は、開発者が任意に選択して Unicode 文字列で指定します。この名前は、ApplicationDeployment クラスを使用して、ファイルを必要に応じてダウンロードする場合に使用されます。

optional

省略可能です。 このファイルは、アプリケーションの最初の実行時にダウンロードする必要があるか、または、サーバー上に格納しておき、アプリケーションから要求がある場合にダウンロードするかを指定します。 false を設定するか定義しない場合、ファイルは、アプリケーションを初めて実行するとき、またはインストールするときにダウンロードされます。 true の場合、アプリケーション マニフェストが有効になるように group を指定する必要があります。 writeableType に値 applicationData が指定されている場合、optional を true に指定することはできません。

writeableType

省略可能です。 このファイルをデータ ファイルとして指定します。 現在の有効な値は applicationData のみです。

typelib

typelib 要素は、ファイル要素の子要素で、省略可能です。 この要素は、COM コンポーネントに属するタイプ ライブラリを表します。 この要素には、次の属性があります。

属性

Description

tlbid

必ず指定します。 タイプ ライブラリに代入された GUID です。

version

必ず指定します。 タイプ ライブラリのバージョン番号です。

helpdir

必ず指定します。 コンポーネントのヘルプ ファイルが格納されているディレクトリです。 長さが 0 の場合があります。

resourceid

省略可能です。 ロケール識別子 (LCID) の 16 進文字列表現です。 0x プリフィックスや先行するゼロを含まない 1 ~ 4 桁の 16 進数字です。 LCID には、ニュートラル サブ言語識別子がある場合があります。

flags

省略可能です。 このタイプ ライブラリのタイプ ライブラリ フラグの文字列表現です。 "RESTRICTED"、"CONTROL"、"HIDDEN"、または "HASDISKIMAGE" のいずれかです。

comClass

comClass 要素は file 要素の省略可能な子要素ですが、ClickOnce アプリケーションに登録不要な COM を使用して配置する COM コンポーネントが含まれる場合は必要です。 この要素には、次の属性があります。

属性

Description

clsid

必ず指定します。 GUID として表現される COM コンポーネントのクラス ID です。

description

省略可能です。 クラス名。

threadingModel

省略可能です。 インプロセス COM クラスが使用するスレッド モデルです。 このプロパティが null の場合、スレッド モデルは使用されません。 コンポーネントはクライアントのメイン スレッドで作成され、他のスレッドからの呼び出しはこのスレッドにマーシャリングされます。 有効な値は次のとおりです。

Apartment、Free、Both、および Neutral

tlbid

省略可能です。 この COM コンポーネントのタイプ ライブラリの GUID です。

progid

省略可能です。 バージョン依存で、COM コンポーネントに関連付けられたプログラムによる識別子です。 ProgID の形式は、<vendor>.<component>.<version> です。

miscStatus

省略可能です。 アセンブリにおける重複は、MiscStatus レジストリ キーが提供する情報を表します。 miscStatusIcon、miscStatusContent、miscStatusDocprint、または miscStatusThumbnail 属性の値が見つからない場合は、miscStatus に設定されている対応する既定値が使用されます。 値は、次の表の属性値をコンマで区切った一覧になります。 COM クラスが MiscStatus レジストリ キー値を必要とする OCX クラスの場合は、この属性を使用できます。

miscStatusIcon

省略可能です。 アセンブリにおける重複は、DVASPECT_ICON が提供する情報を表します。 オブジェクトのアイコンを提供できます。 値は、次の表の属性値をコンマで区切った一覧になります。 COM クラスが Miscstatus レジストリ キー値を必要とする OCX クラスの場合は、この属性を使用できます。

miscStatusContent

省略可能です。 アセンブリにおける重複は、DVASPECT_CONTENT が提供する情報を表します。 画面またはプリンターに出力できる複合ドキュメントを提供します。 値は、次の表の属性値をコンマで区切った一覧になります。 COM クラスが MiscStatus レジストリ キー値を必要とする OCX クラスの場合は、この属性を使用できます。

miscStatusDocPrint

省略可能です。 アセンブリにおける重複は、DVASPECT_DOCPRINT が提供する情報を表します。 プリンターに印刷するように画面にオブジェクトの表現を表示できます。 値は、次の表の属性値をコンマで区切った一覧になります。 COM クラスが MiscStatus レジストリ キー値を必要とする OCX クラスの場合は、この属性を使用できます。

miscStatusThumbnail

省略可能です。 アセンブリにおける重複は、DVASPECT_THUMBNAIL が提供する情報を表します。 オブジェクトのサムネイル表示をブラウザー ツールに提供できます。 値は、次の表の属性値をコンマで区切った一覧になります。 COM クラスが MiscStatus レジストリ キー値を必要とする OCX クラスの場合は、この属性を使用できます。

comInterfaceExternalProxyStub

comInterfaceExternalProxyStub 要素は file 要素の省略可能な子要素ですが、ClickOnce アプリケーションに登録不要な COM を使用して配置する COM コンポーネントが含まれる場合は必要になることがあります。 この要素には、次の属性があります。

属性

Description

iid

必ず指定します。 このプロキシが提供するインターフェイス ID (IID) です。 IID は、中かっこで囲む必要があります。

baseInterface

省略可能です。 iid によって参照されるインターフェイスが派生するインターフェイスの IID です。

numMethods

省略可能です。 インターフェイスが実装するメソッドの数です。

name

省略可能です。 コードに設定されるインターフェイスの名前です。

tlbid

省略可能です。 iid 属性によって指定されるインターフェイスの説明を含むタイプ ライブラリです。

proxyStubClass32

省略可能です。 32 ビットのプロキシ DLL で IID を CLSID に割り当てます。

comInterfaceProxyStub

comInterfaceProxyStub 要素は file 要素の省略可能な子要素ですが、ClickOnce アプリケーションに登録不要な COM を使用して配置する COM コンポーネントが含まれる場合は必要になることがあります。 この要素には、次の属性があります。

属性

Description

iid

必ず指定します。 このプロキシが提供するインターフェイス ID (IID) です。 IID は、中かっこで囲む必要があります。

baseInterface

省略可能です。 iid によって参照されるインターフェイスが派生するインターフェイスの IID です。

numMethods

省略可能です。 インターフェイスが実装するメソッドの数です。

Name

省略可能です。 コードに設定されるインターフェイスの名前です。

Tlbid

省略可能です。 iid 属性によって指定されるインターフェイスの説明を含むタイプ ライブラリです。

proxyStubClass32

省略可能です。 32 ビットのプロキシ DLL で IID を CLSID に割り当てます。

threadingModel

省略可能です。 省略可能です。 インプロセス COM クラスが使用するスレッド モデルです。 このプロパティが null の場合、スレッド モデルは使用されません。 コンポーネントはクライアントのメイン スレッドで作成され、他のスレッドからの呼び出しはこのスレッドにマーシャリングされます。 有効な値は次のとおりです。

Apartment、Free、Both、および Neutral

windowClass

windowClass 要素は file 要素の省略可能な子要素ですが、ClickOnce アプリケーションに登録不要な COM を使用して配置する COM コンポーネントが含まれる場合は必要になることがあります。 この要素は、バージョンが適用されている COM コンポーネントが定義するウィンドウ クラスを参照します。 この要素には、次の属性があります。

属性

Description

versioned

省略可能です。 登録に使用される内部ウィンドウ クラスの名前にウィンドウ クラスを含むアセンブリのバージョンを含めるかどうかを制御します。 この属性の値は、yes または no です。 既定値は yes です。 no は、同じウィンドウ クラスが side-by-side コンポーネントおよび同等の非 side-by-side コンポーネントによって定義され、同じウィンドウ クラスとして扱う場合だけ使用してください。 ウィンドウ クラスの登録に関する通常の規則が適用されることに注意してください。バージョンが適用されていないため、ウィンドウ クラスを最初に登録するコンポーネントだけが登録できます。

hash

hash 要素は、file 要素の子要素で、省略可能です。 hash 要素に属性はありません。

ClickOnce では、セキュリティをチェックするために、アプリケーション内の全ファイルで計算したハッシュを使用して、配置後にどのファイルも変更されていないことを確認できるようにしています。 hash 要素が含まれていない場合、このチェックは実行されません。したがって、hash 要素を省略することは推奨できません。

ハッシュされていないファイルがマニフェストに含まれている場合、ハッシュされていないファイルのコンテンツはユーザーが確認できないため、そのマニフェストにデジタル署名することはできません。

dsig:Transforms

dsig:Transforms 要素は、hash 要素に必須の子です。 dsig:Transforms 要素には属性がありません。

dsig:Transform

dsig:Transform 要素は、dsig:Transforms 要素に必須の子です。 dsig:Transform 要素には、次の属性があります。

属性

Description

Algorithm

このファイルのダイジェストを計算するために使用するアルゴリズムです。 ClickOnce が現在使用している唯一の値は、urn:schemas-microsoft-com:HashTransforms.Identity です。

dsig:DigestMethod

dsig:DigestMethod 要素は、hash 要素に必須の子です。 dsig:DigestMethod 要素には、次の属性があります。

属性

Description

Algorithm

このファイルのダイジェストを計算するために使用するアルゴリズムです。 ClickOnce が現在使用している唯一の値は、http://www.w3.org/2000/09/xmldsig#sha1 です。

dsig:DigestValue

dsig:DigestValue 要素は、hash 要素に必須の子です。 dsig:DigestValue 要素に属性はありません。 このテキスト値は、指定のファイルで計算されたハッシュです。

解説

この要素では、アプリケーションを構成する、アセンブリ以外のすべてのファイルと、ファイルを検査するためのハッシュ値を指定します。 また、この要素には、ファイルに関連するコンポーネント オブジェクト モデル (COM: Component Object Model) 分離データも含めることもできます。 ファイルが変更された場合は、変更内容を反映するためにアプリケーション マニフェスト ファイルも更新する必要があります。

使用例

ClickOnce を使用して配置されるアプリケーションの、アプリケーション マニフェスト内の file 要素を示すコード例を次に示します。

  <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 アプリケーション マニフェスト