<dependency> , element (wdrożenie ClickOnce)
Określa wersję aplikacji do zainstalowania oraz lokalizację manifestu aplikacji.
Składnia
<dependency>
<dependentAssembly
preRequisite
visible
dependencyType
codeBase
size
>
<assemblyIdentity
name
version
publicKeyToken
processorArchitecture
language
type
/>
<hash>
<dsig:Transforms>
<dsig:Transform
Algorithm
/>
</dsig:Transforms>
<dsig:DigestMethod />
<dsig:DigestValue>
</dsig:DigestValue>
</hash>
</dependentAssembly>
</dependency>
Elementy i atrybuty
Element dependency
jest wymagany. Nie ma atrybutów. Manifest wdrożenia może zawierać wiele dependency
elementów.
Element dependency
zwykle wyraża zależności dla głównej aplikacji w zestawach zawartych w aplikacji ClickOnce. Jeśli aplikacja Main.exe korzysta z zestawu o nazwie DotNetAssembly.dll, ten zestaw musi być wymieniony w sekcji zależności. Zależność może jednak również wyrażać inne typy zależności, takie jak zależności w określonej wersji środowiska uruchomieniowego języka wspólnego, na zestawie w globalnej pamięci podręcznej zestawów (GAC) lub na obiekcie COM. Ponieważ jest to technologia wdrażania bezobsługowa, technologia ClickOnce nie może zainicjować pobierania i instalacji tych typów zależności, ale uniemożliwia uruchomienie aplikacji, jeśli co najmniej jedna z określonych zależności nie istnieje.
dependentAssembly
Wymagany. Ten element zawiera assemblyIdentity
element . W poniższej tabeli przedstawiono atrybuty obsługiwane przez dependentAssembly
program .
Atrybut | opis |
---|---|
preRequisite |
Opcjonalny. Określa, że ten zestaw powinien już istnieć w GAC. Prawidłowe wartości to true i false . Jeśli true element , a określony zestaw nie istnieje w GAC, uruchomienie aplikacji nie powiedzie się. |
visible |
Opcjonalny. Identyfikuje tożsamość aplikacji najwyższego poziomu, w tym jej zależności. Używane wewnętrznie przez ClickOnce do zarządzania magazynem i aktywacją aplikacji. |
dependencyType |
Wymagany. Relacja między tą zależnością a aplikacją. Prawidłowe wartości to: - install . Składnik reprezentuje oddzielną instalację od bieżącej aplikacji.- preRequisite . Składnik jest wymagany przez bieżącą aplikację. |
codebase |
Opcjonalny. Pełna ścieżka do manifestu aplikacji. |
size |
Opcjonalny. Rozmiar manifestu aplikacji w bajtach. |
Assemblyidentity
Wymagany. Ten element jest elementem podrzędnym dependentAssembly
elementu. Zawartość assemblyIdentity
musi być taka sama jak opisana w manifeście aplikacji ClickOnce. W poniższej tabeli przedstawiono atrybuty assemblyIdentity
elementu.
Atrybut | opis |
---|---|
Name |
Wymagane. Identyfikuje nazwę aplikacji. |
Version |
Wymagany. Określa numer wersji aplikacji w następującym formacie: major.minor.build.revision |
publicKeyToken |
Wymagany. Określa 16-znakowy ciąg szesnastkowy, który reprezentuje ostatnie 8 bajtów skrótu SHA-1 klucza publicznego, w ramach którego jest podpisana aplikacja lub zestaw. Klucz publiczny używany do podpisywania musi mieć wartość 2048 bitów lub większą. |
processorArchitecture |
Wymagany. Określa mikroprocesor. Prawidłowe wartości dotyczą x86 32-bitowego systemu Windows i IA64 64-bitowego systemu Windows. |
Language |
Opcjonalny. Identyfikuje dwa częściowe kody języków zestawu. Na przykład EN-US, czyli angielski (USA). Wartość domyślna to neutral . Ten element znajduje się w asmv2 przestrzeni nazw. |
type |
Opcjonalny. Aby uzyskać zgodność z poprzednimi wersjami z technologią instalacji równoległej systemu Windows. Jedyną dozwoloną wartością jest win32 . |
hash
Element hash
jest opcjonalnym elementem podrzędnym file
elementu. Element hash
nie ma atrybutów.
Funkcja ClickOnce używa algorytmicznego skrótu wszystkich plików w aplikacji jako sprawdzenia zabezpieczeń, aby upewnić się, że żadne z plików nie zostało zmienione po wdrożeniu. hash
Jeśli element nie zostanie uwzględniony, to sprawdzenie nie zostanie wykonane. W związku z tym pominięcie hash
elementu nie jest zalecane.
dsig:Transforms
Element dsig:Transforms
jest wymaganym elementem podrzędnym hash
elementu. Element dsig:Transforms
nie ma atrybutów.
dsig:Transform
Element dsig:Transform
jest wymaganym elementem podrzędnym dsig:Transforms
elementu. W poniższej tabeli przedstawiono atrybuty dsig:Transform
elementu.
Atrybut | opis |
---|---|
Algorithm |
Algorytm używany do obliczania skrótu dla tego pliku. Obecnie jedyną wartością używaną przez ClickOnce jest urn:schemas-microsoft-com:HashTransforms.Identity . |
dsig:DigestMethod
Element dsig:DigestMethod
jest wymaganym elementem podrzędnym hash
elementu. W poniższej tabeli przedstawiono atrybuty dsig:DigestMethod
elementu.
Atrybut | opis |
---|---|
Algorithm |
Algorytm używany do obliczania skrótu dla tego pliku. Obecnie jedyną wartością używaną przez ClickOnce jest http://www.w3.org/2000/09/xmldsig#sha1 . |
dsig:DigestValue
Element dsig:DigestValue
jest wymaganym elementem podrzędnym hash
elementu. Element dsig:DigestValue
nie ma atrybutów. Jego wartość tekstowa to obliczony skrót dla określonego pliku.
Uwagi
Manifesty wdrażania zwykle mają jeden assemblyIdentity
element, który identyfikuje nazwę i wersję manifestu aplikacji.
Przykład 1
Poniższy przykład kodu przedstawia dependency
element w manifeście wdrożenia Technologii ClickOnce.
<!-- Identify the assembly dependencies -->
<dependency>
<dependentAssembly dependencyType="install" allowDelayedBinding="true" codebase="MyApplication.exe" size="16384">
<assemblyIdentity name="MyApplication" version="0.0.0.0" cultural="neutral" processorArchitecture="msil" />
<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>YzXYZJAvj9pgAG3y8jXUjC7AtHg=</dsig:DigestValue>
</hash>
</dependentAssembly>
</dependency>
Przykład 2
Poniższy przykład kodu określa zależność od zestawu już zainstalowanego w GAC.
<dependency>
<dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true">
<assemblyIdentity name="GACAssembly" version="1.0.0.0" language="neutral" processorArchitecture="msil" />
</dependentAssembly>
</dependency>
Przykład 3
Poniższy przykład kodu określa zależność od określonej wersji środowiska uruchomieniowego języka wspólnego.
<dependency>
<dependentAssembly dependencyType="preRequisite" allowDelayedBinding="true">
<assemblyIdentity name="Microsoft.Windows.CommonLanguageRuntime" version="2.0.50215.0" />
</dependentAssembly>
</dependency>
Przykład 4
Poniższy przykład kodu określa zależność systemu operacyjnego.
<dependency>
<dependentOS supportUrl="http://www.microsoft.com" description="Microsoft Windows Operating System">
<osVersionInfo>
<os majorVersion="4" minorVersion="10" />
</osVersionInfo>
</dependentOS>
</dependency>