Lancer CMD en tant que administrateur en c#

cs_GhostMoon Messages postés 82 Date d'inscription dimanche 14 mars 2010 Statut Membre Dernière intervention 17 juin 2013 - 19 avril 2010 à 22:35
cplwt Messages postés 4 Date d'inscription mardi 14 avril 2009 Statut Membre Dernière intervention 1 octobre 2012 - 8 mars 2013 à 14:32
Bonsoir tout le monde s'il vous plais vous pouvez m'aider j'ai un problem je veux lancer cmd a partir de mon application en c# mais en tant que administrateur!!
merci d'avance :)

5 réponses

cs_jopop Messages postés 1540 Date d'inscription lundi 26 mai 2003 Statut Membre Dernière intervention 1 août 2013 12
7 mars 2013 à 14:49
Salut,

as-tu essayé de lancer directement ta commande (sans passer par runas) en remplissant les attributs UserName et Password de ton ProcessStartInfo ?
1
bonjour,

Je cherche la même chose.
Avez-vous une solution ?

Phil
0
dodo7263 Messages postés 614 Date d'inscription mercredi 10 septembre 2008 Statut Membre Dernière intervention 9 février 2017 6
7 mars 2013 à 12:03
Salut,

Regardez peut-être ce lien.

@++

SD
0
oui, j'avais remarqué, mais tel quel je reçois une fenêtre popup qui signale que le mot de passe n'a pas été fourni (et ne permet même pas de l'entrer).

Il est évident de fournir le mot de passe quelque-part, mais comme je voudrais lancer la commande dans un timer (60 sec), j'ai essayé de fournir le mot de passe dans le code (crypté, avec SecureString()) via startInfo.Password, mais le process continue son popup, toutes les 60 sec ...

De même renas n'a pas de paramètre genre /psw:

Merci pour votre recherche,
Je continue ...
0

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

Posez votre question
cplwt Messages postés 4 Date d'inscription mardi 14 avril 2009 Statut Membre Dernière intervention 1 octobre 2012
8 mars 2013 à 14:32
BINGO, merci jopop !

Mince alors, j'étais passé à côté de la plaque.
Pour info, voici l'extrait de code:
------------------------------------------
using System.Security /* SecureString */;

string sUserAdmin = "uuuuu";
string sPswAdmin = "ppppp";
SecureString ssPswAdmin = new SecureString();

for (int i = 0; i < sPswAdmin.Length; i++)
{
ssPswAdmin.AppendChar(sPswAdmin[i]);
}

pEcCmd = new Process();
pEcCmd.StartInfo.FileName = "xxxx.exe";
pEcCmd.StartInfo.Arguments = "-yyyy";
pEcCmd.StartInfo.UserName = sUserAdmin;
pEcCmd.StartInfo.Password = ssPswAdmin;
pEcCmd.StartInfo.UseShellExecute = false;
pEcCmd.StartInfo.RedirectStandardOutput = true;
pEcCmd.Start();
...
------------------------------------------------
MAIS je suis passé alors au message suivant:

"L’opération demandée nécessite une élévation"

Ce qui est un autre problème, que j'ai pu (temporairement ?) résoudre
(Modifier les paramètres de contrôle de compte utilisateur)
en passant de "Toujours m'avertir (recommandé)"
à "Jamais m'avertir (non recommandé)" dont je me méfierai dès aujourd'hui.

Et voilà, merci à tous les intervenants.
0
Rejoignez-nous