59 votes

Le répertoire NN se trouve dans le profil de l'utilisateur, mais il n'est pas répertorié dans le tableau RemoveFile

Lorsque j'essaie de créer l'installateur, je reçois l'erreur suivante :

Le répertoire ProgramMenuDir est dans le profil de l'utilisateur mais n'est pas répertorié dans la table RemoveFile.

Comment puis-je résoudre ce problème ? Voici la structure du répertoire que j'utilise :

0 votes

Que diriez-vous de supprimer le sous-dossier Monarch lors de la désinstallation, mais de ne pas supprimer son dossier parent ProgramMenuDir? Peut-être que ce dossier parent est le dossier du nom de l'entreprise et comporte de nombreux autres produits de la même entreprise créant des sous-dossiers en dessous.

82voto

Yan Sklyarenko Points 16649

Autant que je puisse voir, le problème réside dans l'utilisation de l'élément . Si l'attribut 'Directory' est omis, il prend le répertoire du composant parent. Dans votre cas, il s'agit d'un répertoire avec Id="EFIMonarch". Cela explique pourquoi vous avez l'avertissement pour le répertoire externe (ProgramMenuDir), mais ne l'avez pas pour le répertoire EFIMonarch.

Essayez de remplacer :

avec

De plus, il est préférable d'être explicite pour chaque élément RemoveFolder.

J'espère que cela vous aide.

24 votes

Dans mon cas, je voyais cette erreur parce que j'avais oublié d'ajouter le composant en tant que fonctionnalité.

0 votes

@TheMouthofaCow pareil pour moi.

2 votes

Ce serait bien d'avoir cette propriété dans le tutoriel, je pense que la plupart pourraient le comprendre intuitivement s'il l'était. C'est le seul article que j'ai pu trouver qui a pris la peine d'expliquer pourquoi au lieu de simplement fournir un exemple qui ne fonctionne pas.

3voto

Bouakkez Anouar Points 33

Si d'autres réponses ne fonctionnent toujours pas pour vous, essayez de vérifier l'option Suppress ICE validation, Visual Studio ignorera ces validations, suivez simplement ce chemin :

VotreProjet -> Propriétés -> Paramètres de l'outil

Validation ICE

1voto

Suhaib Ahmad Points 303

Je prends juste quelques instants pour écrire ceci pour d'autres personnes qui pourraient encore rencontrer ce problème même après avoir suivi la réponse à cette question.

J'ai eu le même problème, et même après avoir spécifié explicitement le répertoire dans le RemoveFolder ne m'a pas aidé, j'ai essayé de mettre ce DirectoryRef contenant les composants d'installation/désinstallation juste après le TARGETDIR dans le même fragment et cela a aidé à résoudre mon problème.

-6voto

MC Qu Points 9

Si la réponse suivante ne fonctionne toujours pas, essayez de redémarrer votre visual studio.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X