2017-05-25 1 views
1

Je construis une application WPF complexe. J'ai plusieurs solutions de studio visuel. Chaque solution a un projet. En raison de la raison de protection du code, j'ai dû placer des projets dans des solutions séparées.Cliquez une fois Déploiement - Comment publier une application qui a plusieurs projets VS?

  1. ComponentMain Solution (WPF Application)
  2. Componenta Solution (Bibliothèque de classes)
  3. ComponentB Solution (Bibliothèque de classes)

Composant Un assemblage & B de referenses de la solution principale. La solution principale charge les assemblages du composant A & B en utilisant la réflexion pendant l'exécution.

Lorsque je compile chaque solution, un événement Xcopy post build est déclenché et toutes les dll sont copiées dans un dossier appelé GlobalOutput, où je peux exécuter l'application en exécutant simplement le fichier MainSolution.exe.

Maintenant, je veux publier l'application en utilisant ClickOnce. Comme je l'ai mentionné plus tôt, il y a plusieurs projets et les Dll sont chargés en utilisant la réflexion. Selon mes connaissances, je ne peux pas utiliser l'assistant de publication une fois pour une raison donnée ci-dessus. J'ai peut-être tort.

Comment puis-je publier mon application en cliquant une fois sur.? Comme j'ai toutes les DLL dans le répertoire GlobalOutput, y a-t-il un moyen de créer un déploiement clickkonce directement à partir de là?

Répondre

0

Vous pouvez essayer de spécifier quels fichiers sont publiés par Click Once.

Pour vous, ce sera quelque chose comme:

  • Choisissez l'une de ces solutions/projets comme le projet d'édition pour configurer Cliquez une fois. Vous devez marquer les dll des autres projets/solutions comme pré-requis.
    1. Lorsqu'un projet est sélectionné dans l'Explorateur de solutions, dans le menu Projet, cliquez sur Propriétés.
    2. Cliquez sur l'onglet Publier.
    3. Cliquez sur le bouton Fichiers d'application pour ouvrir la boîte de dialogue Fichiers d'application.
    4. Dans la boîte de dialogue Fichiers d'application, sélectionnez l'assembly d'application (fichier .dll) que vous souhaitez marquer comme prérequis. Notez que votre application doit avoir une référence à l'assembly de l'application pour qu'elle apparaisse dans la liste.
    5. Dans le champ Statut de publication, sélectionnez Prérequis dans la liste déroulante.

Pour rendre le fichier des autres solutions/projets apparaissent dans la boîte de dialogue de fichier d'application à l'étape 3, vous pouvez référencer les dll de sortie, ou les ajouter au fichier de solution et définir l'action de construction de contenu.

Pour plus d'informations: Specify Which Files Are Published by ClickOnce

+0

votre commentaire dit: « Notez que l'application doit avoir une référence à l'ensemble d'application afin qu'il apparaisse dans la liste. » Mais comment puis-je inclure des DLL non référencées? – Rahul

+0

Vous pouvez soit référencer les DLL, ou aller au projet que vous souhaitez publier en cliquant une fois, ajouter des éléments existants, ajouter les DLL existantes. Vérifiez que l'élément dll a une action de build définie sur le contenu. – Vince