<InstallChecks> élément (programme d’amorçage)<InstallChecks> element (bootstrapper)

Le InstallChecks élément prend en charge le démarrage d’une variété de tests sur l’ordinateur local pour vous assurer que toutes les conditions préalables requises pour une application ont été installés.The InstallChecks element supports starting a variety of tests against the local computer to make sure that all of the appropriate prerequisites for an application have been installed.

SyntaxeSyntax

<InstallChecks>  
    <AssemblyCheck   
        Property  
        Name  
        PublicKeyToken  
        Version  
        Language  
        ProcessorArchitecture  
    />  
    <RegistryCheck  
        Property  
        Key  
        Value  
    />  
    <ExternalCheck   
        PackageFile  
        Property  
        Arguments  
    />  
    <FileCheck   
        Property  
        FileName  
        SearchPath  
        SpecialFolder  
        SearchDepth  
    />  
    <MsiProductCheck   
        Property  
        Product  
        Feature  
    />  
    <RegistryFileCheck   
        Property  
        Key  
        Value  
        FileName  
        SearchDepth  
    />  
</InstallChecks>  

AssemblyCheckAssemblyCheck

Cet élément est un élément enfant facultatif de InstallChecks.This element is an optional child element of InstallChecks. Pour chaque instance de AssemblyCheck, le programme d’amorçage permet de garantir que l’assembly identifié par l’élément existe dans le global assembly cache (GAC).For each instance of AssemblyCheck, the bootstrapper will make sure that the assembly identified by the element exists in the global assembly cache (GAC). Il ne contient aucun élément et a les attributs suivants.It contains no elements, and has the following attributes.

AttributAttribute DescriptionDescription
Property Obligatoire.Required. Le nom de la propriété pour stocker le résultat.The name of the property to store the result. Cette propriété peut être référencée à partir d’un test sous le InstallConditions élément, qui est un enfant de le Command élément.This property can be referenced from a test underneath the InstallConditions element, which is a child of the Command element. Pour plus d’informations, consultez <commandes > élément.For more information, see <Commands> Element.
Name Obligatoire.Required. Le nom qualifié complet de l’assembly à vérifier.The fully qualified name of the assembly to check.
PublicKeyToken Obligatoire.Required. La forme abrégée de la clé publique associé à cet assembly un nom fort.The abbreviated form of the public key associated with this strongly named assembly. Tous les assemblys stockés dans le GAC doivent avoir un nom, une version et une clé publique.All assemblies stored in the GAC must have a name, a version, and a public key.
Version Obligatoire.Required. Version de l'assembly.The version of the assembly.

Le numéro de version est au format < opus>.< version mineure>.< générer version>.< version de révision>.The version number has the format <major version>.<minor version>.<build version>.<revision version>.
Language Facultatif.Optional. La langue d’un assembly localisé.The language of a localized assembly. La valeur par défaut est neutral.Default is neutral.
ProcessorArchitecture Facultatif.Optional. Le processeur d’ordinateur ciblé par cette installation.The computer processor targeted by this installation. La valeur par défaut est msil.Default is msil.

ExternalCheckExternalCheck

Cet élément est un élément enfant facultatif de InstallChecks.This element is an optional child element of InstallChecks. Pour chaque instance de ExternalCheck, le programme d’amorçage exécute le programme externe nommé dans un processus séparé et stocker son code de sortie dans la propriété indiquée par Property.For each instance of ExternalCheck, the bootstrapper will execute the named external program in a separate process, and store its exit code in the property indicated by Property. ExternalCheck est utile pour l’implémentation de contrôles de dépendance complexes, ou lorsque la seule façon de vérifier l’existence d’un composant consiste à instancier.ExternalCheck is useful for implementing complex dependency checks, or when the only way to check for the existence of a component is to instantiate it.

ExternalCheck ne contient aucun élément et a les attributs suivants.ExternalCheck contains no elements, and has the following attributes.

AttributAttribute DescriptionDescription
Property Obligatoire.Required. Le nom de la propriété pour stocker le résultat.The name of the property to store the result. Cette propriété peut être référencée à partir d’un test sous le InstallConditions élément, qui est un enfant de le Command élément.This property can be referenced from a test underneath the InstallConditions element, which is a child of the Command element. Pour plus d’informations, consultez <commandes > élément.For more information, see <Commands> Element.
PackageFile Obligatoire.Required. Le programme externe à exécuter.The external program to execute. Le programme doit faire partie du package de distribution le programme d’installation.The program must be part of the setup distribution package.
Arguments Facultatif.Optional. Fournit des arguments de ligne de commande à l’exécutable nommé par PackageFile.Supplies command-line arguments to the executable named by PackageFile.

FichierConsignerFileCheck

Cet élément est un élément enfant facultatif de InstallChecks.This element is an optional child element of InstallChecks. Pour chaque instance de FileCheck, le programme d’amorçage déterminera si le fichier nommé existe et retourner le numéro de version du fichier.For each instance of FileCheck, the bootstrapper will determine whether the named file exists, and return the version number of the file. Si le fichier n’a pas un numéro de version, le programme d’amorçage définit la propriété nommée par Property à 0.If the file does not have a version number, the bootstrapper sets the property named by Property to 0. Si le fichier n’existe pas, Property n’est pas définie pour n’importe quelle valeur.If the file does not exist, Property is not set to any value.

FileCheck ne contient aucun élément et a les attributs suivants.FileCheck contains no elements, and has the following attributes.

AttributAttribute DescriptionDescription
Property Obligatoire.Required. Le nom de la propriété pour stocker le résultat.The name of the property to store the result. Cette propriété peut être référencée à partir d’un test sous le InstallConditions élément, qui est un enfant de le Command élément.This property can be referenced from a test underneath the InstallConditions element, which is a child of the Command element. Pour plus d’informations, consultez <commandes > élément.For more information, see <Commands> Element.
FileName Obligatoire.Required. Le nom du fichier à rechercher.The name of the file to find.
SearchPath Obligatoire.Required. Le disque ou le dossier dans lequel rechercher le fichier.The disk or folder in which to look for the file. Cela doit être un chemin d’accès relatif si SpecialFolder est assigné ; sinon, il doit être un chemin d’accès absolu.This must be a relative path if SpecialFolder is assigned; otherwise, it must be an absolute path.
SpecialFolder Facultatif.Optional. Un dossier qui a une signification particulière pour Windows ou à ClickOnceClickOnce.A folder that has special significance either to Windows or to ClickOnceClickOnce. La valeur par défaut consiste à interpréter SearchPath comme un chemin d’accès absolu.The default is to interpret SearchPath as an absolute path. Les valeurs valides sont les suivantes :Valid values include the following:

AppDataFolder.AppDataFolder. Le dossier application data pour ce ClickOnceClickOnce de l’application ; spécifiques à l’utilisateur actuel.The application data folder for this ClickOnceClickOnce application; specific to the current user.

CommonAppDataFolder.CommonAppDataFolder. Le dossier de données d’application utilisé par tous les utilisateurs.The application data folder used by all users.

CommonFilesFolder.CommonFilesFolder. Le dossier fichiers communs pour l’utilisateur actuel.The Common Files folder for the current user.

LocalDataAppFolder.LocalDataAppFolder. Le dossier de données pour les applications non itinérant.The data folder for non-roaming applications.

ProgramFilesFolder.ProgramFilesFolder. Le dossier Program Files standard pour les applications 32 bits.The standard Program Files folder for 32-bit applications.

StartUpFolder.StartUpFolder. Le dossier qui contient toutes les applications lancées au démarrage du système.The folder that contains all applications launched at system startup.

SystemFolder.SystemFolder. Le dossier qui contient des DLL système 32 bits.The folder that contains 32-bit system DLLs.

WindowsFolder.WindowsFolder. Le dossier qui contient l’installation du système Windows.The folder that contains the Windows system installation.

WindowsVolume.WindowsVolume. Le lecteur ou la partition qui contient l’installation du système Windows.The drive or partition that contains the Windows system installation.
SearchDepth Facultatif.Optional. La profondeur à partir duquel rechercher des sous-dossiers pour le fichier nommé.The depth at which to search sub-folders for the named file. La recherche respecte la profondeur en premier.The search is depth-first. La valeur par défaut est 0, ce qui limite la recherche sur le dossier de niveau supérieur spécifié par SpecialFolder et SearchPath.The default is 0, which restricts the search to the top-level folder specified by SpecialFolder and SearchPath.

MsiProductCheckMsiProductCheck

Cet élément est un élément enfant facultatif de InstallChecks.This element is an optional child element of InstallChecks. Pour chaque instance de MsiProductCheck, le programme d’amorçage vérifie si l’installation de Microsoft Windows Installer spécifiée a exécuté jusqu'à son terme.For each instance of MsiProductCheck, the bootstrapper checks to see whether the specified Microsoft Windows Installer installation has run until it is completed. La valeur de propriété est définie selon l’état du produit installé.The property value is set depending on the state of that installed product. Une valeur positive indique que le produit est installé, 0 ou -1 indique qu’il n’est pas installé.A positive value indicates the product is installed, 0 or -1 indicates it is not installed. (Voir la fonction du Kit de développement Windows Installer MsiQueryFeatureState pour plus d’informations.) .(Please see the Windows Installer SDK function MsiQueryFeatureState for more information.) . Si le programme d’installation de Windows n’est pas installé sur l’ordinateur, Property n’est pas définie.If Windows Installer is not installed on the computer, Property is not set.

MsiProductCheck ne contient aucun élément et a les attributs suivants.MsiProductCheck contains no elements, and has the following attributes.

AttributAttribute DescriptionDescription
Property Obligatoire.Required. Le nom de la propriété pour stocker le résultat.The name of the property to store the result. Cette propriété peut être référencée à partir d’un test sous le InstallConditions élément, qui est un enfant de le Command élément.This property can be referenced from a test underneath the InstallConditions element, which is a child of the Command element. Pour plus d’informations, consultez <commandes > élément.For more information, see <Commands> Element.
Product Obligatoire.Required. Le GUID pour le produit installé.The GUID for the installed product.
Feature Facultatif.Optional. Le GUID pour une fonctionnalité spécifique de l’application installée.The GUID for a specific feature of the installed application.

RegistryCheckRegistryCheck

Cet élément est un élément enfant facultatif de InstallChecks.This element is an optional child element of InstallChecks. Pour chaque instance de RegistryCheck, le programme d’amorçage vérifie si la clé de Registre spécifiée existe, ou si elle a la valeur indiquée.For each instance of RegistryCheck, the bootstrapper checks to see whether the specified registry key exists, or whether it has the indicated value.

RegistryCheck ne contient aucun élément et a les attributs suivants.RegistryCheck contains no elements, and has the following attributes.

AttributAttribute DescriptionDescription
Property Obligatoire.Required. Le nom de la propriété pour stocker le résultat.The name of the property to store the result. Cette propriété peut être référencée à partir d’un test sous le InstallConditions élément, qui est un enfant de le Command élément.This property can be referenced from a test underneath the InstallConditions element, which is a child of the Command element. Pour plus d’informations, consultez <commandes > élément.For more information, see <Commands> Element.
Key Obligatoire.Required. Nom de la clé de Registre.The name of the registry key.
Value Facultatif.Optional. Le nom de la valeur de Registre à récupérer.The name of the registry value to retrieve. La valeur par défaut consiste à retourner le texte de la valeur par défaut.The default is to return the text of the default value. Value doit être une chaîne ou une valeur DWORD.Value must be either a String or a DWORD.

RegistryFileCheckRegistryFileCheck

Cet élément est un élément enfant facultatif de InstallChecks.This element is an optional child element of InstallChecks. Pour chaque instance de RegistryFileCheck, le programme d’amorçage récupère la version du fichier spécifié, essayant d’abord de récupérer le chemin d’accès au fichier à partir de la clé de Registre spécifiée.For each instance of RegistryFileCheck, the bootstrapper retrieves the version of the specified file, first attempting to retrieve the path to the file from the specified registry key. Cela est particulièrement utile si vous souhaitez rechercher un fichier dans un répertoire spécifié en tant que valeur dans le Registre.This is particularly useful if you want to look up a file in a directory specified as a value in the registry.

RegistryFileCheck ne contient aucun élément et a les attributs suivants.RegistryFileCheck contains no elements, and has the following attributes.

AttributAttribute DescriptionDescription
Property Obligatoire.Required. Le nom de la propriété pour stocker le résultat.The name of the property to store the result. Cette propriété peut être référencée à partir d’un test sous le InstallConditions élément, qui est un enfant de le Command élément.This property can be referenced from a test underneath the InstallConditions element, which is a child of the Command element. Pour plus d’informations, consultez <commandes > élément.For more information, see <Commands> Element.
Key Obligatoire.Required. Nom de la clé de Registre.The name of the registry key. Sa valeur est interprétée comme le chemin d’accès vers un fichier, à moins que le File attribut est défini.Its value is interpreted as the path to a file, unless the File attribute is set. Si cette clé n’existe pas, Property n’est pas définie.If this key does not exist, Property is not set.
Value Facultatif.Optional. Le nom de la valeur de Registre à récupérer.The name of the registry value to retrieve. La valeur par défaut consiste à retourner le texte de la valeur par défaut.The default is to return the text of the default value. Value doit être une chaîne.Value must be a String.
FileName Facultatif.Optional. Le nom d’un fichier.The name of a file. Si spécifié, la valeur obtenue à partir de la clé de Registre est censée pour être un chemin de répertoire, et ce nom est ajouté à ce dernier.If specified, the value obtained from the registry key is assumed to be a directory path, and this name is appended to it. Si non spécifié, la valeur retournée à partir du Registre est censée pour être le chemin complet vers un fichier.If not specified, the value returned from the registry is assumed to be the full path to a file.
SearchDepth Facultatif.Optional. La profondeur à partir duquel rechercher des sous-dossiers pour le fichier nommé.The depth at which to search sub-folders for the named file. La recherche respecte la profondeur en premier.The search is depth-first. La valeur par défaut est 0, ce qui limite la recherche sur le dossier de niveau supérieur spécifié par la valeur de la clé de Registre.The default is 0, which restricts the search to the top-level folder specified by the registry key's value.

NotesRemarks

Si les éléments sous InstallChecks définissent les tests à exécuter, ils ne les exécutent pas.While the elements underneath InstallChecks define the tests to run, they do not execute them. Pour exécuter les tests, vous devez créer Command éléments situés sous le Commands élément.To execute the tests, you must create Command elements underneath the Commands element.

ExempleExample

L’exemple de code suivant montre le InstallChecks élément tel qu’il est utilisé dans le fichier de produit pour le .NET Framework.NET Framework.The following code example demonstrates the InstallChecks element as it is used in the product file for the .NET Framework.NET Framework.

<InstallChecks>  
    <ExternalCheck Property="DotNetInstalled" PackageFile="dotnetchk.exe" />  
    <RegistryCheck Property="IEVersion" Key="HKLM\Software\Microsoft\Internet Explorer" Value="Version" />  
</InstallChecks>  

InstallConditionsInstallConditions

Lorsque InstallChecks sont évaluées, il produit des propriétés.When InstallChecks are evaluated, they produce properties. Les propriétés sont ensuite utilisées par InstallConditions pour déterminer si un package doit installer, ignorer ou faire échouer.The properties are then used by InstallConditions to determine whether a package should install, bypass, or fail. Le tableau suivant répertorie les InstallConditions:The following table lists the InstallConditions:

FailIf Le cas échéant FailIf condition prend la valeur true, le package échoue.If any FailIf condition evaluates to true, the package will fail. Le reste des conditions ne peut pas être évalué.The rest of the conditions will not be evaluated.
BypassIf Le cas échéant BypassIf condition prend la valeur true, le package sera ignoré.If any BypassIf condition evaluates to true, the package will be bypassed. Le reste des conditions ne peut pas être évalué.The rest of the conditions will not be evaluated.

Propriétés prédéfiniesPredefined properties

Le tableau suivant répertorie les BypassIf et FailIf éléments :The following table lists the BypassIf and FailIf elements:

PropriétéProperty NotesNotes Valeurs possiblesPossible Values
Version9X Numéro de version d’un système d’exploitation Windows 9 X.Version number of a Windows 9X operating system. 4.10 = Windows 984.10 = Windows 98
VersionNT Numéro de version d’un système d’exploitation Windows NT.Version number of a Windows NT-based operating system. Major.Minor.ServicePackMajor.Minor.ServicePack

5.0 = Windows 20005.0 = Windows 2000

5.1.0 = Windows XP5.1.0 = Windows XP

5.1.2 = Windows XP Professionnel SP25.1.2 = Windows XP Professional SP2

5.2.0 = Windows Server 20035.2.0 = Windows Server 2003
VersionNT64 Numéro de version d’un système d’exploitation 64 bits Windows NT.Version number of a 64-bit Windows NT-based operating system. Comme mentionné précédemment.Same as mentioned earlier.
VersionMsi Numéro de version du service Windows Installer.Version number of the Windows Installer service. 2.0 = Windows Installer 2.02.0 = Windows Installer 2.0
AdminUser Spécifie si un utilisateur dispose des privilèges d’administrateur sur un système d’exploitation Windows NT.Specifies whether a user has administrator privileges on a Windows NT-based operating system. 0 ne = aucun privilège d’administrateur0 = no administrator privileges

1 = des privilèges d’administrateur1 = administrator privileges

Par exemple, pour bloquer l’installation sur un ordinateur exécutant Windows 95, utilisez le code suivant :For example, to block installation on a computer running Windows 95, use code such as the following:

<!-- Block install on Windows 95 -->  
    <FailIf Property="Version9X" Compare="VersionLessThan" Value="4.10" String="InvalidPlatform"/>  

Voir aussiSee also

<Commandes > élément <Commands> element
Référence du schéma de produit et du packageProduct and package schema reference