1

Al.exe を使用してサテライト アセンブリを作成しようとしています。

ファイルからアセンブリを作成する.ressourcesには、次のコマンドを実行しています。

al.exe /c:<culture> /out:<output dll name> /embedresource: <name of the .resources file> /fileversion:3.1.5.0 /productv:3.1.5.0 /keyf:Key.snk

最初の質問:

fileversion、productv、および keyf は、デプロイされたアプリケーションのファイル バージョン、製品バージョン、およびキーと同じでなければなりませんか?

2 番目の質問:

生成された DLL を GAC にデプロイすると、バージョン列が 0.0.0.0 になるのはなぜですか? しかし、GAC でプロパティを表示すると、ファイル バージョンと製品バージョンが正しく、バージョン フィールドが 0.0.0.0 になっているのはなぜですか?

どうもありがとうございました。

4

1 に答える 1

0

質問1への回答:

ファイルバージョン、製品バージョン、およびキーは、デプロイされたアプリケーションと同じである必要があるようです。同じでない場合、サテライトDLLは表示されず、アプリケーションはデフォルトのリソースDLLを使用します。

質問2への回答:

/vファイルと製品のバージョンに加えて指定する必要があるAl.exeを使用する場合のオプションであるため、バージョンは0.0.0.0です。

最良の方法:

最良の方法は/template、バージョン、ファイルバージョン、および製品バージョンを個別に指定する代わりにオプションを使用して、新しく作成されたアセンブリがアプリケーションアセンブリから正しいマニフェストを継承できるようにすることです。

于 2012-05-31T11:46:41.210 に答える