GetFileHash, tâche
Calcule les sommes de contrôle du contenu d’un fichier ou d’un ensemble de fichiers.
Cette tâche a été ajoutée dans la version 15.8, mais nécessite une solution de contournement pour une utilisation avec les versions de MSBuild antérieures à 16.0.
Paramètres de tâche
Le tableau ci-dessous décrit les paramètres de la tâche GetFileHash
.
Paramètre | Description |
---|---|
Files |
Paramètre ITaskItem[] obligatoire.Fichiers à hacher. |
Items |
Paramètre de sortie de ITaskItem[] .Entrée Files avec des métadonnées supplémentaires définies sur le hachage du fichier. |
Hash |
Paramètre de sortie String .Hachage du fichier. Cette sortie est définie seulement si un seul élément a été passé en entrée. |
Algorithm |
Paramètre String facultatif.Algorithme. Valeurs autorisées : SHA256 , SHA384 , SHA512 . Valeur par défaut = SHA256 . |
MetadataName |
Paramètre String facultatif.Nom des métadonnées où le hachage est stocké dans chaque élément. La valeur par défaut est FileHash . |
HashEncoding |
Paramètre String facultatif.Encodage à utiliser pour les hachages générés. La valeur par défaut est hex . Valeurs autorisées = hex , base64 . |
Exemple
L’exemple suivant utilise la tâche GetFileHash
pour déterminer et afficher la somme de contrôle des éléments FilesToHash
.
<Project>
<ItemGroup>
<FilesToHash Include="$(MSBuildThisFileDirectory)\*" />
</ItemGroup>
<Target Name="GetHash">
<GetFileHash Files="@(FilesToHash)">
<Output
TaskParameter="Items"
ItemName="FilesWithHashes" />
</GetFileHash>
<Message Importance="High"
Text="@(FilesWithHashes->'%(Identity): %(FileHash)')" />
</Target>
</Project>
Avec un seul fichier, vous pouvez utiliser le paramètre de sortie Hash
. L’exemple du projet suivant est nommé hash-example.proj
et calcule un hachage pour lui-même :
<Project>
<ItemGroup>
<FileToHash Include="$(MSBuildThisFileDirectory)hash-example.proj" />
</ItemGroup>
<Target Name="GetHash">
<GetFileHash Files="@(FileToHash)">
<Output
TaskParameter="Hash"
ItemName="FileHash" />
</GetFileHash>
<Message Importance="High"
Text="File: @(FileToHash) Hash: @(FileHash)" />
</Target>
</Project>
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour