Exécuter un programme C# sur un autre ordinateur

Résolu/Fermé
Anonyme1234_7288 Messages postés 64 Date d'inscription samedi 14 mars 2020 Statut Membre Dernière intervention 8 avril 2021 - 29 mars 2021 à 23:52
 Utilisateur anonyme - 16 avril 2021 à 19:49
Bonjour,

Je suis rendu à la phase finale de mon programme qui est de le mettre sur d’autre ordinateur que celui qui a été utilisé pour le programmer. Je programme avec Visual Studio 2019 et lorsque je transfère le fichier exécutable sur l’ordinateur client, donc que je le copie/colle, tout va bien, mais lorsque je le lance, rien ne se produit, il n’y a aucun message d’erreur, aucune fenêtre qui apparaît et qui disparaît, il n’y a rien qui se produit, le programme ne démarre pas.

P.S. Mon programme est programmé en C# et c’est une WindowsFormApp

Merci d’avance!!!

8 réponses

Anonyme1234_7288 Messages postés 64 Date d'inscription samedi 14 mars 2020 Statut Membre Dernière intervention 8 avril 2021
30 mars 2021 à 14:36
J'ai vraiment besoin de votre aide
0
dachiasse Messages postés 1709 Date d'inscription samedi 12 septembre 2020 Statut Membre Dernière intervention 13 mai 2021 149
30 mars 2021 à 16:43
Salut,

C'est étonnant que tu n'obtiennes pas de message d'erreur.

Normalement, pour tout langage, en tout cas c'est ainsi avec Python. Tu installes les modules adéquats, tu fournis le langage, les modules et le code source. Tu exécutes et ça fonctionne.
0
Anonyme1234_7288 Messages postés 64 Date d'inscription samedi 14 mars 2020 Statut Membre Dernière intervention 8 avril 2021
30 mars 2021 à 16:48
Moi aussi je trouve sa bizarre, mais j'ai pris le temps de décortiquer toute mon code et je sais plus ou moins mon erreur est où, dans environ 1 heure 30 je vais savoir où est mon erreur exactement et je vais t'avertir, comme ça on pourra travailler ensemble pour être capable de régler le problème.
0
Utilisateur anonyme
30 mars 2021 à 18:13
Dachiasse,

Actuellement, tu n'y connais rien en C# et ça fait plusieurs fois que tu interviens à coté de la plaque. C# c'est pas Python, sinon y'a un langage qui ne servirait à rien (enfin, si Python sert à quelque chose....)
Bon là ton intervention a été sans conséquence mais sur un précédent sujet tu as embrouillé le demandeur encore plus qu'il ne l'était. Quand on sait, on ne peut pas aider.

On est quelques un à savoir coder (Xavier, yg, HNenry, Jordanne, etc...) dans ce langage, si on a pas répondu c'est soit qu'on a pas encore vu, soit qu'on ne sait pas, soit que (comme c'est le cas présentement) la réponse demande du temps.
J'ai mis presque un heure à chercher le code, prendre les captures et rédiger le message.
Vous comprendrez tous les 2 qu'au milieu de la nuit ou en pleine journée de travail, ben non c'était pas le moment.
0
dachiasse Messages postés 1709 Date d'inscription samedi 12 septembre 2020 Statut Membre Dernière intervention 13 mai 2021 149 > Utilisateur anonyme
30 mars 2021 à 20:30
Je comprends. Pas de soucis. T’as bien fait de me le dire.
0
Utilisateur anonyme > dachiasse Messages postés 1709 Date d'inscription samedi 12 septembre 2020 Statut Membre Dernière intervention 13 mai 2021
30 mars 2021 à 20:51
Ton envie d'aider est louable, mets la à profit là où tes compétences seront pleinement employées
0
Utilisateur anonyme
30 mars 2021 à 18:02
Bonsoir

quand rien ne se passe c'est souvent (mais toujours) un problème de framework.
Dans ce cas il n'y a pas de message car le logiciel n'est même pas lancé.

Je te l'ai dit précédement, il faut que le framework pour lequel tu as compilé ton logiciel (ou un framework supérieur sauf peut-être le 5) soit installé sur le PC cible.
Il faut aussi que toutes les références que tu as utilisées soient adaptées à ce framework.
Visual Studio ça ne l'embête pas de compiler ton logiciel en 4.5 (par exemple) et d'appeler une référence 4.8.

Tu trouveras toutes tes références dans l'explorateur de solution

En regardant les propriétés de chacune, tu pourras voir avec quel framework (runtime) mini elles fonctionnent.


A noter que tu travailles avec Excel, les références interop doivent aussi être compatibles avec la version d'Excel présente sur le PC cibles.

Si tout ça est correct.
Pour obtenir fichier de log à chaque erreur, même non signalée ouvre le fichier program.cs ça devrait ressembler à
using System;
using System.Windows.Forms;

namespace Test_Winform {
	static class Program {
		/// <summary>
		/// The main entry point for the application.
		/// </summary>
		[STAThread]
		static void Main(){
			Application.EnableVisualStyles();
			Application.SetCompatibleTextRenderingDefault(false);
			Application.Run(new Form1());
		}
	}
}


Tu vas ajouter quelques lignes de façon à ce que ça ressemble à ça.
Attention, l'ordre est important
using System;
using System.Diagnostics;
using System.IO;
using System.Windows.Forms;

namespace Test_Winform
{
    static class Program
    {
        /// <summary>
        /// Point d'entrée principal de l'application.
        /// </summary>
        [STAThread]
        static void Main()
        {

            // hook on error before app really starts
            AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);

            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1());
        }

        static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
        {
            string bureau = Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory);
            string log = Path.Combine(bureau, string.Format("Log_Erreurs_{0:yyyy-MM-dd_HH-mm-ss-fff}.txt",DateTime.Now));
            File.WriteAllText(log, e.ExceptionObject.ToString());
            Process.Start(log);
        }
    }
}


Tu auras un fichier log sur ton bureau, daté à la milliseconde.

0
Anonyme1234_7288 Messages postés 64 Date d'inscription samedi 14 mars 2020 Statut Membre Dernière intervention 8 avril 2021
30 mars 2021 à 18:56
Merci de ta réponse, j'ai vérifier et sur les deux ordinateurs, le framework est le même, mais tu as soulevé le point de la version du logiciel Excel, dans mon cas ça pourrait être sa le problème car la version du logiciel Excel côté client n'est pas le même que sur l'ordinateur qui a été utilisé pour développé l'application. Côté client, la version est 2010 et sur l'ordinateur du développeur c'est la version 2019, est-ce que sa pourrait être sa le problème?
0
Utilisateur anonyme > Anonyme1234_7288 Messages postés 64 Date d'inscription samedi 14 mars 2020 Statut Membre Dernière intervention 8 avril 2021
30 mars 2021 à 19:16
Ça peut
0
Anonyme1234_7288 Messages postés 64 Date d'inscription samedi 14 mars 2020 Statut Membre Dernière intervention 8 avril 2021 > Utilisateur anonyme
30 mars 2021 à 19:18
Où pourrais-je trouver la fiche technique de Interop?
0
Utilisateur anonyme
30 mars 2021 à 19:51
bonne question
0
Anonyme1234_7288 Messages postés 64 Date d'inscription samedi 14 mars 2020 Statut Membre Dernière intervention 8 avril 2021
30 mars 2021 à 19:53
Donc que me conseillerais-tu?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
30 mars 2021 à 20:50
Tu peux commencer par là
https://docs.microsoft.com/en-us/dotnet/api/microsoft.office.interop.excel?view=excel-pia

Et faire une recherche de compatibilité avec la version de tes dll
0
Anonyme1234_7288 Messages postés 64 Date d'inscription samedi 14 mars 2020 Statut Membre Dernière intervention 8 avril 2021
30 mars 2021 à 21:05
Donc pour régler mon problème je dois seulement changer la version de mon extension :
using Excel = Microsoft.Office.Interop.Excel;

C'est bien ça?
0
Utilisateur anonyme > Anonyme1234_7288 Messages postés 64 Date d'inscription samedi 14 mars 2020 Statut Membre Dernière intervention 8 avril 2021
30 mars 2021 à 21:52
peut être.
Mais ça peut aussi bien venir d’une autre référence où d’autre chose.
0
Anonyme1234_7288 Messages postés 64 Date d'inscription samedi 14 mars 2020 Statut Membre Dernière intervention 8 avril 2021 > Utilisateur anonyme
30 mars 2021 à 22:07
Je pense pas parce que j'ai décortiqué mon code en plein de partie et lorsque je ne déclare pas mon fichier Excel il n'y a aucune erreur. Je te reviens avec le résultat.

Merci de ton aide :)
0
Utilisateur anonyme
30 mars 2021 à 23:18
Alors dans ce cas il faut compiler le logiciel avec les dll compatible d'Excel 2010.

C'est une des raisons (avec la lenteur) qui m'ont fait abandonner cette technique il y a plusieurs années déjà.
0
Anonyme1234_7288 Messages postés 64 Date d'inscription samedi 14 mars 2020 Statut Membre Dernière intervention 8 avril 2021
30 mars 2021 à 23:20
D'accord merci :)
0
Anonyme1234_7288 Messages postés 64 Date d'inscription samedi 14 mars 2020 Statut Membre Dernière intervention 8 avril 2021
31 mars 2021 à 00:44
Ça l'a finalement marché, j'ai seulement lancer le programme sur un ordinateur avec Excel 2016 et ça l'a fonctionné.

Merci à tout le monde de votre aide :)
0
Utilisateur anonyme
31 mars 2021 à 07:44
De rien
0
Razz999 Messages postés 4 Date d'inscription vendredi 16 avril 2021 Statut Membre Dernière intervention 16 avril 2021
16 avril 2021 à 16:40
Bonjour Whismeril!

Tu es un patient de nature je crois! Sans trop d'indices, tu l'as désembrouillé.

J'aimerais savoir si tu as de l'expérience en C# lors de la création en Windows Service d'un bout de code qui écoute sur un port innocupé de communication (genre 30000).

J'ai fait bien des applications en Windows Forms, en Windows Service, en un peu de tout, mais là, je suis dans le brouillard. Le même code fonctionne au sein d'un Windows Forms, mais lorsque j'appelle la même fonction au sein d'un Windows Service, il s'y rend, mais ne déclenche pas lors qu'une communication débute.

Si ça te tente d'en voir un bout de tout ça, tu peux venir sur :

https://forums.commentcamarche.net/forum/affich-37178539-beginendcontext-de-httplistener-ne-reagit-pas-au-sein-d-un-service-windows

Je sais! Ce n'est pas conventionnel, mais si tu as déjà affronté le même problème, je ne perds rien de tenter le coup en te posant la question.

Passe une belle journée! :-)
0
Utilisateur anonyme > Razz999 Messages postés 4 Date d'inscription vendredi 16 avril 2021 Statut Membre Dernière intervention 16 avril 2021
16 avril 2021 à 19:49
Bonjour,

je suis patient avec ceux qui sont polis et qui montrent qu'ils essayent de leur coté.
Fouille dans mes dernières intervention, tu verras que je peux aussi ne pas l'être.

Ta demande est hors charte, car, c'est un doublon de ton message initial et ça n'a rien à voir avec le thème de ce fill.
Attends toi à ce que la modération supprime ton message.

Cela dit, comme tu respectes mes 2 critères, tu as le droit à ma réponse, qui ne t'aidera pas, je n'ai jamais codé de service windows.
Il valait mieux, pour toi, que je le dise ici plutôt que polluer ta vraie question.
0