5 votes

Une application en un clic passant de Windows Forms à WPF

J'ai une application Windows Forms que j'ai récemment réécrite dans le format WPF et je dois le mettre à la disposition de mes utilisateurs finaux. J'aimerais pouvoir demander aux utilisateurs de se rendre au point d'installation ClickOnce de l'application WPF et de supprimer leur application Windows Forms, afin qu'ils n'aient pas les deux sur leur machine.

Quelle est la meilleure façon (lire : la plus facile pour les utilisateurs) d'y parvenir ?

J'ai pensé à créer une ligne de commande prérequise pour détecter l'ancienne version et la désinstaller, mais j'aimerais éviter d'avoir à écrire quelque chose de ce genre qui ne serait exécuté qu'une seule fois.

2voto

RobinDotNet Points 8026

Je pense que vous devriez être en mesure de déployer la version WPF comme une nouvelle version de l'application Windows Forms.

Quelle version de .NET Framework chacune des applications cible-t-elle ?

Le nom de l'assemblage est-il le même dans les deux projets, et l'URL d'installation est-elle la même ? (Pour ClickOnce, cela n'a rien à voir avec le projectGUID).

1voto

Don Kirkby Points 12671

Je ne l'ai pas encore essayé, mais pourriez-vous faire en sorte que votre application WPF remplace directement votre application WinForms ? Si vous publiez dans le même dossier, copiez les bons GUID de l'ancien projet vers le nouveau, l'installation pourrait se faire sans problème.

Cela ne supprimera pas les anciennes versions, mais chaque mise à jour d'une application ClickOnce laisse les anciennes versions en place.

Sinon, pouvez-vous transformer votre projet WinForms existant en un projet WPF ? S'agit-il simplement d'un ensemble différent de références d'assemblage ? Je n'ai jamais écrit d'application WPF, alors pardonnez-moi si je me trompe.

0voto

Ray Burns Points 38537

Pourquoi ne pas simplement donner à la nouvelle application WPF la même <ProjectGuid> , <PublishUrl> etc. et un numéro de version majeure plus élevé ?

ClickOnce ne saura même pas que vous êtes passé de WinForms à la technologie WPF.

La fonctionnalité normale de mise à jour des versions de ClickOnce remplacera automatiquement l'ancien code par le nouveau lors de la prochaine mise à jour de l'application (qui peut être configurée pour se produire automatiquement si vous le souhaitez).

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