"Impossible de trouver le certificat de signature manifeste dans le magasin de certificats" - même lorsque vous ajoutez une nouvelle clé

Je ne peux pas construire des projets avec une signature de clé de nom forte - le message dans le titre apparaît toujours.

Oui le projet a été initialement copié à partir d'une autre machine. Cependant, même si j'ajoute une nouvelle clé via L'onglet Signature dans les propriétés du projet, cette erreur est toujours affichée.

J'ai essayé D'exécuter Visual Studio en tant Qu'administrateur et j'ai essayé d'ajouter manuellement les clés au magasin de certificats Windows.

Au secours!

Edit: Je ne reçois pas cette erreur avec un nouveau projet, mais j'aimerais bien que ce projet existant fonctionne. Cela ne fonctionnera pas même si je crée un nouveau certificat!

87
demandé sur Marcus 2012-08-14 21:03:34

11 réponses

J'ai finalement trouvé la solution et j'espère vraiment que cela aidera quelqu'un d'autre aussi.

  1. modifiez le fichier .csproj du projet en question.
  2. Supprimer les lignes de code suivantes:

    <PropertyGroup>
       <ManifestCertificateThumbprint>...........</ManifestCertificateThumbprint>
    </PropertyGroup>
    <PropertyGroup>
       <ManifestKeyFile>xxxxxxxx.pfx</ManifestKeyFile>
    </PropertyGroup>
    <PropertyGroup>
       <GenerateManifests>true</GenerateManifests>
    </PropertyGroup>
    <PropertyGroup>
       <SignManifests>false</SignManifests>
    </PropertyGroup>
    
129
répondu Marcus 2015-11-28 06:37:14

Accédez aux "propriétés" de votre projet dans visual studio. Ensuite, allez à l'onglet signature.

Assurez-vous ensuite que le clic une fois manifeste est désactivé.


Des Instructions Mises À Jour:

Dans votre Explorateur de solutions:

  1. clic droit sur votre projet
  2. cliquez sur propriétés
  3. généralement sur le côté gauche, Sélectionnez l'onglet "Signature"
  4. cochez le signe le ClickOnce manifeste
  5. assurez-vous d'enregistrer!

entrez la description de l'image ici

73
répondu ADL 2017-04-20 18:15:46

Essayez ceci: Clic droit sur votre projet -> Aller à l' propriétés -> Cliquez sur signature, qui est à gauche de l'écran -> Décochez le Signer le cliquez une fois manifeste -> Enregistrer & Build

11
répondu Kamala HB 2016-11-28 08:53:04
  1. Ouvrez le .csproj fichier dans le bloc-notes.
  2. Supprimez les informations suivantes relatives à la signature du certificat dans le magasin de certificats

    <PropertyGroup>
      <ManifestCertificateThumbprint>xxxxx xxxxxx</ManifestCertificateThumbprint>
      <ManifestKeyFile>xxxxxxxx.pfx</ManifestKeyFile>
    <GenerateManifests>true</GenerateManifests>
    <SignManifests>false</SignManifests>
    </PropertyGroup>
    
9
répondu Rajamohan Rajendran 2015-11-28 06:38:03

Accédez aux "propriétés" de vos projets dans visual studio. Ensuite, allez à l'onglet signature.

Assurez-vous ensuite que le clic une fois manifeste est désactivé.

Ou

1.Ouvert le .csproj fichier dans le bloc-notes.

2.Supprimez les informations suivantes relatives à la signature du certificat dans le magasin de certificats xxxxx xxxxxx xxxxxxxx.pfx vrai faux `

Travaillé pour moi.

4
répondu Ash 2016-05-05 15:50:55

En supposant qu'il s'agisse d'un certificat personnel créé par windows sur le système à partir duquel vous avez copié votre projet, vous pouvez utiliser le gestionnaire de certificats sur le système où se trouve le projet et importer le certificat. Démarrez le gestionnaire de certificats (certmgr) et sélectionnez les certificats personnels, puis faites un clic droit sous la liste des certificats existants et sélectionnez Importer à partir des tâches. Utiliser le parcourir pour trouver le .pfx dans le projet (la.pfx du système précédent que vous avez copié avec le projet). Il devrait être dans le sous-répertoire avec le même nom que le répertoire du projet. Je suis familier avec C# et VS, donc si ce n'est pas votre environnement peut-être le .pfx sera ailleurs ou peut-être que cette suggestion ne s'applique pas. Après l'importation, vous devriez obtenir un message d'état. Si vous avez réussi, l'erreur de certificat de compilation devrait disparaître.écran certmgr

2
répondu dpminusa 2014-10-27 17:52:20

C'est simple!!

J'ai résolu ce problème en suivant ces étapes:

  1. ouvrir les propriétés du projet img
  2. Cliquez sur L'onglet Signature
  3. et décochez "signer l'assemblage"

C'est ça!!

2
répondu Amit Kadam 2018-04-29 10:24:21

Il ne suffit pas d'ajouter manuellement des clés au magasin de certificats Windows. Le certificat contient uniquement la clé publique signée. Vous devez également importer la clé privée associée à la clé publique dans le certificat. Un .le fichier pfx contient des clés publiques et privées dans un seul fichier. C'est ce que vous avez besoin d'importer.

0
répondu Owen Wengerd 2012-08-23 21:10:31

Vous avez dit que vous avez copié des fichiers d'un autre ordinateur. Après les avoir copiés, les avez-vous "débloqués"? Plus précisément l' .le fichier snk doit être vérifié pour s'assurer qu'il n'est pas marqué comme dangereux.

0
répondu Owen Wengerd 2012-08-24 15:39:24

Pour signer un assembly avec un nom fort en utilisant des attributs

Ouvrir AssemblyInfo.cs (en $(SolutionDir)\Properties)

Le AssemblyKeyFileAttribute ou AssemblyKeyNameAttribute, en spécifiant le nom du fichier ou du conteneur qui contient la paire de clés à utiliser lors de la signature de l'assembly avec un nom fort.

Ajouter le code suivant:

[assembly:AssemblyKeyFileAttribute("keyfile.snk")]
0
répondu QuangNHb 2015-11-28 06:38:39

Si vous avez juste besoin de construire le projet ou la solution localement , la suppression de la signature peut être une solution simple comme d'autres le suggèrent.

Mais si vous avez cette erreur sur votre serveur de construction automation comme TeamCity où vous construisez vos morceaux de version réels pour le déploiement ou la distribution, vous pouvez envisager comment vous pouvez obtenir ce cert correctement installé dans le magasin cert sur la machine de construction, de sorte que vous obtenez un Packages signés à la fin de la construction.

Généralement il n'est pas recommandé de vérifier/valider les certificats PFX dans le contrôle de source, donc comment vous obtenez ces fichiers sur votre serveur de construction pendant le processus de construction est un peu une autre question, mais parfois les gens ont ce fichier stocké avec le code de la solution, de sorte que vous pouvez le trouver dans le dossier

Tout ce que vous devez faire est simplement d'installer ce certificat sous compte approprié sur votre serveur de construction.

  1. Télécharger PsExec depuis Windows Sysinternals .

  2. Ouvrez une invite de commande et entrez ce qui suit. Il va générer une nouvelle invite de commande, s'exécutant comme Système Local (en supposant que votre TeamCity s'exécute sous le compte système Local par défaut):

    > psexec.exe -i -s cmd.exe

  3. Dans cette nouvelle invite de commande, accédez au répertoire contenant le certificat et entrez le nom du fichier à installer (remplacez le nom du fichier par le vôtre):

    > mykey.pfx

  4. L'Importation Assistant de certificat va démarrer. Cliquez sur et sélectionnez Toutes les valeurs par défaut suggérées.

  5. Exécutez la construction.

Tous les crédits va à Stuart Noble (et puis encore à Laurent Kempé je crois ☺).

0
répondu Sevenate 2018-07-03 22:58:57