IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

DLL lance exe en avant plan


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Novembre 2020
    Messages
    85
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Novembre 2020
    Messages : 85
    Par défaut DLL lance exe en avant plan
    Bonjour,
    je viens de développer une DLL permettant de lancer un .exe
    Le code est très simple mais suffit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    public string LanceExe()
          {
                try
                {
                    System.Diagnostics.Process.Start(@"D:\Logiciels\Modbus\ModbusDoctor\ModbusDoctorV2.exe");
                }
                catch (Exception ex)
                {
                    return ex.ToString();
                }
                return null;
          }
    Par contre, l'exe s'exécute en arrière plan. Je suppose que c'est parce que mon logiciel appelant cette DLL est lancé par l'utilisateur "Système".
    Comment faire pour le forcer à s'exécuter sur l'utilisateur actuel et du coup le voir s'afficher ?

    Merci

  2. #2
    Membre éprouvé
    Homme Profil pro
    Passioné ...
    Inscrit en
    Juillet 2020
    Messages
    145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Allier (Auvergne)

    Informations professionnelles :
    Activité : Passioné ...
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2020
    Messages : 145
    Par défaut
    Bonjour, avec la propriété ProcessStartInfo tu peux gérer si l'exe lancé doit s'ouvrir dans une nouvelle fenetre ou pas ...
    https://docs.microsoft.com/fr-fr/dot...ew=netcore-3.1

    Regarde de ce coté peut être ...

    Amitiés Denis

  3. #3
    Membre confirmé
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Novembre 2020
    Messages
    85
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Novembre 2020
    Messages : 85
    Par défaut
    Bonjour,
    merci pour cette réponse mais cela ne fonctionne pas mieux.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    {
    ProcessStartInfo startInfo = new ProcessStartInfo(@"Chemin\MonLogiciel.exe");
    startInfo.WindowStyle = ProcessWindowStyle.Maximized;
    Process.Start(startInfo);
    }
    Du coup j'ai essayé avec un code pour ouvrir l'exe avec un autre utilisateur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    string password ="";
    if (password == null)
        throw new ArgumentNullException("MDP");
     
    var securePassword = new SecureString();
     
    foreach (char c in password)
    securePassword.AppendChar(c);
     
    System.Diagnostics.Process.Start(@"Chemin\MonLogiciel.exe", "MonUser", securePassword, "leNomdeMonPC");
    Maintenant ça ne marche pas mais ça me renvoie le message "Acces Denied"...

  4. #4
    Membre éprouvé
    Homme Profil pro
    Passioné ...
    Inscrit en
    Juillet 2020
    Messages
    145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Allier (Auvergne)

    Informations professionnelles :
    Activité : Passioné ...
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2020
    Messages : 145
    Par défaut
    Je ne crois pas qu'il faille chercher du coté password ... plutôt la propriété CreateNoWindow a mettre false ... As tu testé ?

  5. #5
    Membre confirmé
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Novembre 2020
    Messages
    85
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Novembre 2020
    Messages : 85
    Par défaut
    Salut,
    non je n'ai pas regardé, je regarderai cela ce soir.

  6. #6
    Membre émérite
    Homme Profil pro
    Développeur / architecte
    Inscrit en
    Juillet 2009
    Messages
    473
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur / architecte

    Informations forums :
    Inscription : Juillet 2009
    Messages : 473
    Par défaut
    Je crois qu'on ne peut faire cela que par de l'interop avec des appels windows.
    Je crois que je l'ai déjà fait et ça ressemble à quelque chose comme ça ou comme ça...

Discussions similaires

  1. [VBA-E] pb positionnement en avant-plan d'une textbox
    Par bandit boy dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 10/04/2006, 08h28
  2. Mode console toujours en avant plan ....
    Par Alice9 dans le forum MFC
    Réponses: 10
    Dernier message: 27/09/2005, 13h38
  3. Comment faire pour qu'une Form reste en avant-plan?
    Par Bodom-Child dans le forum C++Builder
    Réponses: 3
    Dernier message: 25/08/2005, 10h28
  4. Mettre en avant plan une autre application...
    Par loupdeau dans le forum MFC
    Réponses: 13
    Dernier message: 19/05/2005, 13h26
  5. Réponses: 9
    Dernier message: 03/03/2005, 14h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo