Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Executer en tant que [ Réseau & Internet / Client - Serveur ] (remifalcon)

vendredi 11 juillet 2008 à 11:39:37 | Executer en tant que

remifalcon

Bonjour à tous

Je souhaiterai faire un programme qui permette d'exécuter un autre prog en tant que admin avec le mon de passe
j'utilise la fonction System.Diagnostics.Process.Start()
Mais ca ne marche pas, ça me met en debug que le nom d'utilisateur ou mdp n'est pas le bon . (alors qu' ils sont bons)

Quelqu'un aurait une solution?
---------------------------------------------------------------------------------------
String passwordPre = "monPass";
System.Security.SecureString password = new System.Security.SecureString();
        
        char[] monArray = passwordPre.ToCharArray();
           
            foreach (char c in monArray)
            {
                password.AppendChar(c);
                Console.WriteLine("->"+c);
            }


        System.Diagnostics.Process.Start(@"C:\configvisio.reg", "admin", password,"monDomain");

Merci!

vendredi 11 juillet 2008 à 12:05:03 | Re : Executer en tant que

sebmafate

Membre Club Administrateur CodeS-SourceS
Salut,

regarde cette source : http://www.csharpfr.com/codes/LANCEUR-PROGRAMME_38787.aspx

j'utilise la syntaxe suivante :

Process p = new Process();
// On renseigne les informations nécessaires
ProcessStartInfo psi = new ProcessStartInfo(this.programName, this.txtParameters.Text);
psi.UserName = this.username;
psi.Password = this.password;

p.StartInfo = psi;
p.Start();




Sébastien FERRAND (blog)
Consultant Sénior
[Microsoft Visual C# MVP]

vendredi 11 juillet 2008 à 13:05:08 | Re : Executer en tant que

remifalcon

Comme je te le disais en mp, aurais tu un exemple de code fonctionnel?
Merci

vendredi 11 juillet 2008 à 13:16:10 | Re : Executer en tant que

remifalcon

Re
Bon j'ai regardé je galère à fond.
Le code à pourtant l'air de compilé
Peux tu me dire ce que tu aurais rajouté?
voici mon fichier cs:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;
using System.Diagnostics;

namespace ConsoleApplication1
{

  
    class Program
    {

        [DllImport("advapi32.dll", EntryPoint = "CreateProcessAsUser")]
        public static extern int CreateProcessAsUserA(int hToken, string lpApplicationName, string lpCommandLine, SECURITY_ATTRIBUTES lpProcessAttributes, SECURITY_ATTRIBUTES lpThreadAttributes, int bInheritHandles, int dwCreationFlags, string lpEnvironment, string lpCurrentDirectory, STARTUPINFO lpStartupInfo, PROCESS_INFORMATION lpProcessInformation);

        public struct PROCESS_INFORMATION
        {
            int hProcess;
            int hThread;
            int dwProcessId;
            int dwThreadId;
        }
        public struct STARTUPINFO
        {
            int cb;
            string lpReserved;
            string lpDesktop;
            string lpTitle;
            int dwX;
            int dwY;
            int dwXSize;
            int dwYSize;
            int dwXCountChars;
            int dwYCountChars;
            int dwFillAttribute;
            int dwFlags;
            short wShowWindow;
            short cbReserved2;
            byte lpReserved2;
            int hStdInput;
            int hStdOutput;
            int hStdError;
        }
        public struct SECURITY_ATTRIBUTES
        {
            int nLength;
            int lpSecurityDescriptor;
            int bInheritHandle;
        }




        static void Main(string[] args)
        {


        String passwordPre = "monPass";
        System.Security.SecureString password = new System.Security.SecureString();
        
        char[] monArray = passwordPre.ToCharArray();
           
            foreach (char c in monArray)
            {
                password.AppendChar(c);
               
              
            }
            String test = password.ToString();
            Console.WriteLine("->" + test);
          
        //System.Diagnostics.Process.Start(@"C:\configvisio.reg","cbadmin",password,"CBINFO");


        Process p = new Process();
        //// On renseigne les informations nécessaires
        ProcessStartInfo psi = new ProcessStartInfo(@"C:\configvisio.reg");
        psi.UserName = "cbadmin";
        psi.Password = password;

        psi.UseShellExecute = false;
        p.StartInfo = psi;
        p.Start();
        }
    }
}


vendredi 11 juillet 2008 à 17:18:09 | Re : Executer en tant que

Vulkan51

il faudrait aussi peut etre regarder du coté d'une authentification windows integrée avec impersonnation (=heritage des droits du compte avec lekel tu te log)  ;)

mais il faudrait alors se logger avec ton log et mot de passe admin windows dès que tu veut utiliser ton programme

jeudi 17 juillet 2008 à 15:54:31 | Re : Executer en tant que

eldim

sinon tu peux regarder sur code project
là bas y a tout ce qu'il te faut sur ce sujet...

-- Pourquoi faire simple quand on peut faire compliquer --



Cette discussion est classé dans : system, password, admin, executer, diagnostics


Répondre à ce message

Sujets en rapport avec ce message

Login et password [ par Mattieu51 ] Bonjour à tous,C'est avec grand plaisir que je vous lis depuis quelques semaines, j'ai d'ailleurs eu quelques réponses à mes questions... et ça y est, Execution de commandes Telnet via System.Diagnostics.Process [ par dimassi_ghoz ] Je travaille sur CSharp . Je veux exécuter les commandes telnet . J'ai utilisé System.Diagnostics.Process("telnet","@machine") et je veux exécuter d'a lancement de vncviewer [ par ienien85 ] Bonjour a tous. Voila j'aimerais lancer vnvviewer a partir de mon appli c#. G ecrit la phrase ci dessous mais ca ne marche pas . Quelqu'un pourrait t' Connexion MYSQL [ par mdelahais ] Bonjour,J'ai une base MYSQL sur mon serveur. j'ai fait un programme C# qui recopie des données depuis une table vers un classeur Excel. j'ai testé mon Monter un lecteur réseau [ par Bikarfioul ] Salut !Je cherche a monter un lecteur réseau afin de récupérer le contenu d'un fichier texte.Je trouve actuellement sur les différents Post ceci : Sys Executer un prgm externe [ par Virtua747 ] J'ai chercher dans le forum et je trouve partout que c'est System.Diagnostics.Process.Start(Path,Arg);Mon problème est que Process est inconnu dans Di mail [ par JCpp ] Je n'arrive pas à m'envoyer un E-MailPourtant, j'ai suivis toute la procédure.J'ai ajouté system.Web.dll dans Add ReferenceJ'ai mi : using System.Web. erreur bizarre : 'System.Data.OleDb.OleDbException' [ par gwady ] Bonjour et Bonnes Fêtesj'ai un léger problème sur un dataset que j'effectue. lorsque je clique sur un code postal de mon comboBox je fais en sorte de Tableau de Variables dans un DataGrid [ par jdaviaud ] J'avais déjà posté ce message hier, mais vu que csharpfr.com avait l'air down ce matin, il semble qu'il n'ai pas été enregistré.Je récupère dans un Ta Utilisation System.Resources [ par jeanajaccio ] Bonjour à tous,J'ai besoin d'un petit coup de main :J'ai créé un méthode qui génére dynamiquement une picture box mais je voudrais que l'image change


Nos sponsors

Sondage...

CalendriCode

Octobre 2008
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,44 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.