Application clickonce

Signaler
Messages postés
41
Date d'inscription
lundi 2 avril 2007
Statut
Membre
Dernière intervention
13 août 2012
-
Messages postés
14738
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
23 novembre 2020
-
Bonjour,

Après plusieurs questions posées sur le forum concernant l'intégration de fichiers ressources dans une application j'en viens maintenant à réaliser un exécutable.

J'utilise Visual C# 2010 Express.
Vous allez me dire qu'on ne peut pas réaliser de projet de déploiement avec cette version oui mais on peut apparemment réalisé ce qu'il appelle une application "clickonce".

Pour faire simple, j'ai une application qui affiche une image dans une pictureBox et un champ texte qui va lire un texte dans un fichier.

L'image de ma pictureBox est intégrée dans mon projet en tant que ressources incorporées. Tandis que le fichier ne l'est pas car visiblement il ne peut qu'être lié et non incorporé (Je n'ai pas le choix pour un fichier texte contrairement à un fichier image).

Je fais donc un clic droit sur mon projet puis propriétés et la une fenêtre s'ouvre avec différentes partie pour "régler" mon setup.

Lorsque je clic sur "Publier" un setup se créer et lorsque je le lance l'application rencontre une erreur (elle ne trouve pas le fichier en question) si je continue l'installation et que je lance mon application depuis un raccourci crée sur le bureau, l'application se lance l'image s'affiche mais le champ texte n'affiche pas le contenu du fichier.

J’espère avoir suffisamment détaillé pour avoir une réponse à cette question : Comment inclure le ficher pour qu'il soit dans mon Setup?

Merci.

9 réponses

Messages postés
14738
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
23 novembre 2020
148
Bonjour,

1) tu peux ajouter le fichier en tant que ressources (Propriété du projet, onglet Ressources).
2) sinon, tu peux utiliser un autre outil, tel qu'InnoSetup.
http://www.csharpfr.com/doc/faq.aspx#vb_setup

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list
---
Mon site
Messages postés
41
Date d'inscription
lundi 2 avril 2007
Statut
Membre
Dernière intervention
13 août 2012

Bonjour et merci pour ta réponse.

Mais j'ai déjà ajouté le fichier aux ressources.
Le souci est le suivant : Quel est le chemin de fichier à renseigner dans le code?

Si je mets dans mon code ce chemin : @"..\..\Resources\MonFichier", ça fonctionne en mode debug mais pas dans mon setup car la syntaxe du début (..\) signifie qu'on se place dans le dossier debug de l'application.

Des idées?
Messages postés
14738
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
23 novembre 2020
148
Bonjour,

Je t'ai déjà répondu dans un précédent thread, il me semble donc, et tu as déjà compris aussi.

Tu peux accéder au contenu du fichier directement, il n'est pas possible de lire à partir d'un emplacement physique un élément en ressource.
Sinon, il faut l'extraire avant (càd, écrire le contenu dans un vrai fichier, puis y accéder).

Il y a une méthode permettant de récupérer un stream, mais pour cela regardes en mettant une image en ressource, le code qui est généré.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list
---
Mon site
Messages postés
41
Date d'inscription
lundi 2 avril 2007
Statut
Membre
Dernière intervention
13 août 2012

Bonjour,

Écrire le contenu dans un vrai fichier ok mais ou sera situé ce fichier pour qu'il soit présent dans mon setup?

Personne n'a jamais eu à faire un Setup d'une application avec la lecture d'un fichier dans le code?

Merci.
Messages postés
14738
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
23 novembre 2020
148
Bonjour,

Ton fichier sera celui en ressource dans ton Exe, puis, lors de l'execution de ton exe.
Si tu as besoin de ton fichier texte lors de l'install, je ne vois pas ce que tu veux faire avec.

Regardes du coté d'InnoSetup si tu veux le gérer à part.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list
---
Mon site
Messages postés
41
Date d'inscription
lundi 2 avril 2007
Statut
Membre
Dernière intervention
13 août 2012

Je ne comprends pas désolé.

Si je veux créer un fichier il faut bien renseigner un chemin?
Messages postés
14738
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
23 novembre 2020
148
Bonjour,

Tu peux utiliser le dossier de l'application ou alors le dossier appdata de l'utilisateur.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list
---
Mon site
Messages postés
41
Date d'inscription
lundi 2 avril 2007
Statut
Membre
Dernière intervention
13 août 2012

Bonjour,

et comment cela se code?
Prenons pour exemple un fichier Excel "monfichier.xlsx"

Si je souhaite utiliser le dossier de l'application (sachant que l'application n'est pas encore installée) que dois-je écrire?
Messages postés
14738
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
23 novembre 2020
148
Bonjour,

Regardes dans l'aide de InnoSetup pour cela.
InnoSetup te permettra d'embarquer d'autres fichiers dans ton setup et de préciser l'emplacement de ceux-ci.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices.[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : ).[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualBasic (onglet Références dans les propriétés du projet).[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés/list
---
Mon site