En poursuivant votre navigation sur ce site, vous acceptez l'utilisation de cookies pour vous proposer des contenus et services adaptés. Mentions légales.

Ce site dans votre langue


French English Afrikaans Albanian Amharic Arab Armenian Azerbaijan Basque Belarusian Bengali 
Bosnian Bulgarian Burmese Catalan Cebuano Chichewa Chinese (Simplified) Chinese (Traditional) Cingalais Corsica Croatian 
Czech Danish Dutch Esperanto Estonian Finnish Gaelic (Scotland) Georgian German Greek Haitian creole 
Hawaiian Hebrew Hindi Hungarian Icelandic Igbo Indonesian Irish Italian Japanese Kazakhstan 
Khmer Kirghiz Korean Kurdish Laotian Latvian Lithuanian Luxemburgish Macedonian Malaysian Maltese 
Mongolian Nepalese Norwegian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish 
Swahili Swedish Tagalog Tajikistan Thai Turkish Ukrainian Uzbek Vietnamese 

Plugin TranslatorBox par Dipisoft
Merci à Google Traduction

Dons / Contributions

Qu'ils soient utilisés à titre personnel ou professionnel, mes logiciels et le support associé sont gratuits.

Ce n'est pas le cas de l'hébergement de ce site.

Si vous souhaitez qu'il continue à vivre, vous pouvez faire un don pour participer à cette dépense...

Faire un don en cryptomonnaies

Vous rejoindrez ainsi la...

Liste des généreux donateurs

Recherche sur ce site

Recherche sur ce site

Newsletter

Pour avoir des nouvelles de ce site, inscrivez-vous à notre Newsletter.

Avant de soumettre ce formulaire, veuillez lire et accepter les Mentions légales.

J'accepte :
Recopier le code :
518 Abonnés

Traductions des logiciels

Les logiciels proposés sur ce site
sont nativement en français...

... certains (identifiés par le picto multilingue.png),
sont fournis avec des fichiers
de langues supplémentaires.

Apportez votre pierre à l'édifice en
améliorant des traductions existantes...

... ou en ajoutant des nouvelles
traductions à certains logiciels.

Pour ce faire, rendez-vous sur la page
des fichiers de langues et
rejoignez la liste des contributeurs !

Visites

 2436029 visites

 15 visiteurs en ligne

Réseaux sociaux

DipiRunAs // Lancement de commandes sous un compte défini

Il y a quelque temps j'ai remplacé l'ancien ordi de mon fils aîné qui tournait sous Windows XP par un plus récent sous Windows 7. Cette migration n'a pas été sans conséquences puisqu'au lancement d'un de ses jeux favoris, la fenêtre de l'UAC apparaissait désormais, l'empêchant de jouer. Eh ouais, il n'est pas admin de sa machine ! biggrin

Pour contourner cette sécurité qui devenait un réel problème (un ado mécontent c'est vraiment très pénible !), je me suis mis en quête d'une solution. J'ai testé plusieurs méthodes/outils (dont l'excellent SuperExec de Jean-Claude BELLAMY) mais je n'ai rien trouvé de simple et efficace pour que mon fils puisse enfin lancer ce foutu FlyFF. J'ai donc développé vite fait un petit soft permettant de faire une "élévation de privilèges", utilisant pour ce faire un compte admin codé en dur dans l'appli... Et hop, pas propre-propre mais ça a tourné comme ça pendant plus d'un an.

Et puis quelques mois plus tard, l'éditeur de FlyFF a sorti un nouveau jeu. Bien entendu, ce dernier nécessitait lui-aussi d'être lancé en tant qu'admin. Mais plutôt que de me cantonner à recompiler mon utilitaire après modification du nom de l'exécutable à lancer, je me suis dit qu'il était préférable de le transformer en véritable outil paramétrable et utilisable par d'autres.

C'est comme ça que DipiRunAs est ainsi né !

Euh... c'est quoi ce truc ?!

Cet outil va vous permettre de lancer un exécutable (éventuellement accompagné de paramètres) sous un autre compte. Par exemple lancer une appli nécessitant d'être admin pourra l'être par un simple utilisateur... Il s'agit d'un petit outil sans prétention, totalement "portable" (dès lors que le Framework .NET 4.0 est présent sur votre machine) donc qui ne nécessite pas d'être "installé", développé en C#...

Comment cela fonctionne-t-il ?

Vraiment simplement, vous allez voir.

La première étape consiste en la création d'un fichier de configuration qui contiendra les informations nécessaires à l'exécution : le nom de l'exécutable, ses éventuels paramètres, le compte (pour l'utilisation d'un compte du domaine, utiliser la syntaxe compte@domaine) sous lequel l'appli devra être exécutée et le mot de passe associé. Bien entendu, ces données ne sont pas stockées en clair d'une part pour ne pas compromettre le compte utilisé, mais aussi pour éviter qu'un petit malin y apporte des modifications dans le but d'exécuter autre chose que ce que vous aviez prévu. Pour couronner le tout, le fichier généré contient aussi la "signature" de l'exécutable à lancer, au cas où le même (ou un autre) petit malin chercherait à remplacer l'exécutable à lancer par un cmd.exe, par exemple.

La seconde étape, encore plus simple, se résume à créer un raccourci vers DipiRunAs.exe accompagné du nom du fichier de paramètres.

Génération d'un fichier de configuration

Via une fenêtre d'invite de commande, placez-vous dans le dossier de l'outil.

Lancez-le avec le paramètre /create suivi du nom du fichier que vous souhaitez créer, "test" par exemple. En l'absence de ce second paramètre, l'outil utilisera par défaut "DipiRunAs.dra"

dipirunas01.png    

La fenêtre d'édition de configuration de l'appli s'ouvre et fait apparaître cinq champs de saisie :

  • le nom du fichier de configuration
  • le nom de l'exécutable qui devra être lancé (éventuellement accompagné de son chemin si DipiRunAs n'est pas placé dans le même répertoire). L'utilisation des variables d'environnement est ici autorisée.
  • les éventuels paramètres
  • le compte sous lequel l'exécutable devra être lancé
  • l'éventuel mot de passe associé au compte (à noter que la correspondance compte/mot de passe n'est pas vérifiée ici, si la saisie est erronée, une erreur se produira à l'exécution de la commande)

Une fois ces champs renseignés, cliquez sur le bouton OK. Si rien d'anormal n'est détecté, un message d'information s'affiche pour vous informer du succès de la création du fichier de configuration et l'application se ferme. Pour tester, il vous suffit de faire glisser votre fichier .dra sur l'icone de DipiRunAs...

Modification d'un fichier de configuration existant

Le principe est le même que pour la création. Remplacez juste le /create par /edit. Là encore, le nom du fichier est optionnel, s'il est absent l'outil cherchera à traiter "DipiRunAs.dra".

Une autre façon d'accéder au "mode édition" d'un fichier .dra : lancer l'éventuel raccourci (ou faire glisser le fichier .dra sur l'exécutable) tout en pressant une des touches Shift.

Vous noterez que le champ "Mot de passe" est vide, question de sécurité. Vous ne voudriez quand même pas que vos enfants ou vos utilisateurs se servent d'une configuration existante pour lancer ce qu'ils veulent sous votre compte ?!

Mise en œuvre

Bien entendu, vous ne pouvez pas demander à vos utilisateurs de "faire glisser" le fichier .dra sur l'icone de l'outil comme je viens de vous le conseiller pour essayer votre premier test.

Il vous faudra juste créer un raccourci vers l'outil et indiquer en paramètre le nom (éventuellement précédé de son emplacement s'il ne se trouve pas dans le même dossier) du fichier de configuration contenant les informations à traiter. C'est dans le champ "Cible" de la fenêtre de propriétés du raccourci que cela se passe. Attention à ne pas oublier d'entourer de double-quotes en cas de présence d'espaces dans les chemins/noms !!!

Exemple :

  • C:\Temp\DipiRunAs.exe cmd.dra
  • "C:\Program Files\gPotato\FlyFF\DipiRunAs.exe" flyff.dra
  • "C:\Program Files\Dipisoft\DipiRunAs\DipiRunAs.exe" "C:\Program Files\gPotato\FlyFF\flyff.dra"

Voilà, j'espère que ce nouvel outil rendra service à nombre d'entre vous.

Une dernière petite mise en garde : assurez-vous bien qu'en permettant à un utilisateur de lancer un logiciel ou une commande dans un autre contexte que le sien, cela ne lui permette pas d'accéder à des fonctionnalités qui pourraient s'avérer "dangereuses". Je suis sûr que vous êtes conscient que si le fait de lancer calc.exe sous le compte de l'admin ne permet pas d'user de ces droits pour autre chose, il en est tout autre avec un cmd.exe. Mais sachez aussi qu'un simple notepad.exe peut se transformer en gestionnaire de fichiers grâce à ses anodines fonctions "ouvrir" et "enregistrer sous...". Et lancé en mode admin, un simple utilisateur pourrait faire des dégâts...

Attention : certains antivirus réagissent au téléchargement de cet outil, annonçant une menace (variante de "MSIL/Packed.Confuser.N"). Cela est lié au fait que l'appli est "obfusquée" pour ne pas permettre sa décompilation. Une méthode également utilisée par les créateurs de virus, malheureusement. Inutile de me le signaler, je suis au courant. Je vous certifie que tous mes produits sont sains, alors soit vous me faites confiance, soit vous devrez vous passer de cet outil. frown

  Télécharger ce logiciel (version portable ZIP)


Date de création : 30/12/2013 @ 23:36
Dernière modification : 10/04/2016 @ 14:35
Catégorie : Logiciels - Outils divers
Page lue 25085 fois


Réactions à cet article


Réaction n°24 

par DMike92 le 22/10/2019 @ 23:11

Encore merci pour tout ton travail. C'est rassurant de voir que tu obtiens les mêmes résultats !

Bonne soirée

[réponse de damien, le 23/1/2019 à 03h46]

Il n'y a pas de quoi. Même si mes applis sont gratuites, je trouve normal d'en assurer le SAV... wink


Réaction n°23 

par DMike92 le 22/10/2019 @ 19:54

Le compte administrateur est bien actif comme le montre # net user administrateur Tous mes ordis sont dans le même groupe de travail (qui n'est pas Workgroup) Mais je suis sous Windows 7 (intégrale).

Bon tant pis, au moins je sais maintenant que ça pourra fonctionner quand je passerai à W10.

[réponse de damien, le 22/10/2019 à 21h11]

Je viens d'effectuer le même test sur une VM en Windows 7 (intégrale en workgroup) et je confirme que ça ne fonctionne pas, contrairement à Windows 10. frown

Il te reste donc soit à migrer vers Windows 10, soit à définir un mot de passe pour ton compte Administrateur.


Réaction n°22 

par DMike92 le 22/10/2019 @ 17:06

Merci de prendre mon problème en main smile

Cette option était déjà desactivée mais ne résoud pas notre problème : sans mot de passe je ne peux utiliser DipiRunAs !

Merci pour tous ces conseils.

Bien cordialement Michel

(P.S. Pas trouvé comment inclure ta réponse dans la mienne sur le site)

[réponse de damien, le 22/10/2019 à 17h15]

J'ai testé la méthode sur ma machine avant de t'envoyer mon précédent message et ça a fonctionné nickel.

Si ce n'est pas le cas pour toi, vérifie que le compte Administrateur est bien actif.

Autre piste : tes postes sont en Workgroup ou dans un domaine ? Dans ce second cas, il est probable qu'une GPO "écrase" le paramétrage local mentionné dans mon message précédent.

PS.: inutile de chercher pour éditer un message précédent, il n'y a que moi qui peux le faire.


Réaction n°21 

par DMike92 le 22/10/2019 @ 00:15

Merci beaucoup pour cette réponse. Je vais voir si je mets un mot de passe un jour...

[réponse de damien, le 22/10/2019 à 15h28]

Si tu veux absolument conserver un password vide pour le compte administrateur, tu devras modifier (dans "Stratégies locales" puis "Options de sécurité") l'option "Comptes : restreindre l'utilisation des mots de passe vide par le compte local à l'ouverture de session". Elle est activée par défaut, il te suffit de la désactiver. La prise en compte est automatique, inutile de redémarrer.

Je viens de tester et ça fonctionne.


Réaction n°20 

par DMike92 le 10/10/2019 @ 02:37

Merci beaucoup pour ces réponses rapides. En fait il n'est pas possible de copier le texte qui apparaît dans la fenêtre d'erreur et je l'ai copiée depuis un autre billet sans voir qu'elle n'était pas identique à la mienne. Le compte spécifié dans mon message d'erreur est bien "Administrateur" et ce compte est bien activé sous ce nom.

Par contre ce compte n'a pas de mot de passe (c'est pas bien mais j'essaie de faire fonctionner Windows). Cela pose-t-il un problème ?
 

[réponse de damien, le 10/10/2019 à 10h32]

Oui, je viens de faire des tests et je confirme que le problème est assurément lié à l'absence de mot de passe du compte Administrateur. D'ailleurs le message d'erreur complet ne laisse aucune ambiguïté :

"Erreur rencontrée à la tentative d'impersonnation. Demandez à votre administrateur de vérifier que le compte spécifié (administrateur) existe, qu'il n'est pas désactivé et que le mot de passe est correct...

Échec d'ouverture de session : restriction de compte d'utilisateur. Des raisons possibles sont des mots de passe vides n'étant pas autorisés, des restrictions sur les heures d'ouverture de session ou une restriction de stratégie a été appliquée."


Réaction n°19 

par DMike92 le 08/10/2019 @ 00:55

Bonjour et bravo pour cette mine d'or !

J'essaie d'utiliser Dipirunas sous W7 avec le compte administrateur actif mais j'obtiens 

Erreur rencontrée à la tentative d'impersonnation. Demandez à votre administrateur de vérifier que le compte (MACHINE\compte) existe, qu'il n'est pas désactivé et que le mot de passe est correct...

Une idée ?

Puisque ça ne fonctionne pas, j'en profite pour poser une question à laquelle j'aurais eu la réponse si ça avait marché... :

L'utilisateur doit-il cliquer sur une fenêtre de type "Continuer ?" pour confirmer le lancement de la cible ? (je compte l'utiliser en batch).

D'avance merci pour les réponses.

Cordialement

[réponse de damien, le 08/10/2019 à 02h04]

Au vu du message d'erreur, je remarque que tu as préfixé le compte avec le nom de la machine (dans le champ "Compte") alors qu'il ne faut saisir que le compte. Donc "administrateur" en principe, à moins que celui-ci ait été renommé.

Quant à ta seconde question : non, aucune fenêtre d'UAC ne s'affichera (le compte "administrateur" en étant automatiquement exempté par le système), l'exécution sera totalement transparente pour l'utilisateur. Enfin si ce que tu lances ne génère pas d'affichage.


Réaction n°18 

par Kriworr le 17/04/2019 @ 13:55

Bonjour!

Un GRAND GRAND merci pour ce petit logiciel, qui me fait gagner un temps énorme dans mes manipulations.

C'est tout simple à utiliser même avec des comptes dans un domaine particulier.

Encore merci et bravo pour ton site, c'est une mine d'or.

[réponse de damien, le 17/04/2019 à 16h40]

Merci pour ton message, ça fait super plaisir de voir que cet outil sert et fait un heureux de plus ! wink


Réaction n°17 

par seb le 30/08/2018 @ 10:23

Bonjour,

Super utilitaire que j'utilise avec LanAlertCenter biggrin

mon compte n'étant pas admin du domaine je ne pouvait accéder a la surveillance des services sur les serveurs 

[réponse de damien, le 30/08/2018 à 12h55]

Merci pour ce sympathique retour d'expérience. wink


Réaction n°16 

par utilisateur le 15/01/2018 @ 15:37

Bonjour,

Tout d'abord, merci pour ce logiciel. Je le trouve très pratique et je m'en suis servi plusieurs fois sous Windows7 mais jamais encore sous Windows 10.

Or, je viens de le tester sous 2 postes et j'ai une erreur :

"Erreur rencontrée à la tentative d'impersonnation. Demandez à votre administrateur de vérifier que le compte (MACHINEcompte) existe, qu'il n'est pas désactivé et que le mot de passe est correct...

Le nom d'utilisateur ou le mot de passe est incorrect."

Le mot de passe saisi est le bon.

J'ai essayé d'installer .NET Framwork4 mais Windows10 signale qu'il est déjà installé ou bien qu'il y a déjà une version ultérieure.

D'où ma question : le programme Dipirunas fonctionne-t-il sous Windows 10 ?

Merci d'avance.

[réponse de damien, le 16/01/2018 à 18h51]

Oui l'appli fonctionne sous Windows 10, je viens encore de la tester.

Pour t'en assurer, crée par exemple un fichier pour lancer cmd.exe en local sur ton poste avec le compte local administrateur (à réactiver s'il est désactivé)...

Peut-être as-tu fait une erreur sur la syntaxe pour spécifier le domaine/compte ?

PS.: je ne trouve pas très correct de donner une mauvaise adresse mail pour demander de l'aide... rolleyes


Réaction n°15 

par Foxi le 05/01/2016 @ 14:27

Bonjour,

est-il possible d'utiliser DipiRunAs avec un compte d'un domaine?

En effet un logiciel qu'utilise mes utilisateurs doit installer ses mises à jour depuis un lecteur réseau (non accessible à un compte administrateur local).

Merci d'avance

[réponse de damien, le 05/01/2016 à 16h33]

En consultant la seconde réaction à cet article (merci arb69), tu aurais vu qu'il faut utiliser la syntaxe "login@domaine" (sans les guillemets bien-sûr) dans le champ compte... tongue wink


Réaction n°14 

par Foxi le 02/09/2015 @ 14:50

Super outil que voilà, il m'aidera grandement (au moins à lacer un cmd en admin) sur une session utilisateur dans le lycée où je travaille.
P.S: ce n'est pas parce que les gens ne remercie pas forcement le créateur que ce n'est pas utilisé ou fortement apprécié...je ne remercie pas M. LG quand j'utilise mon téléphone ^^
P.S bis : merci pour ton temps consacré à sortir toutes sortes d'outils GRATUITEMENT et sans PUB

[réponse de damien, le 02/09/2015 à 21h54]


Je ne comprends pas ton premier PS. Je n'ai pas souvenir de m'être plaint de ne pas recevoir des mails de remerciement par centaines... un de temps en temps c'est agréable mais trop ce serait ingérable.

PS.: en même temps, avec ce que tu lui as donné en échange de ton téléphone, c'est à M. LG de te remercier, pas le contraire ! winktongue


Réaction n°13 

par argon1515 le 07/05/2015 @ 10:47

Bonjour
Tout d'abord je tiens à te remercier pour ces petits outils que je découvre et qui peuvent rendre service bien des fois :)
je désire utiliser ton programme DipiRunas pour exécuter openvpn dans une session "utilisateur standard" sur Windows 7 sp1 64 bits connecté à un domaine.
Malheureusement ça ne fonctionne pas.
(J'ai bien sur testé le programme avec d'autres logiciels ça fonctionne parfaitement )

Je m'explique :

Quand on exécute open vpn sans les droits administrateur on a ce types d'erreurs dans le log :
.....
09:19:16 2015 Notified TAP-Windows driver to set a DHCP IP/netmask of XXX.XXX.251.238/255.255.255.252 on interface {E42AE964-9548-441C-B22D-DA96678163CA} [DHCP-serv: XXX.XXX.251.237, lease-time: 31536000]
Thu May 07 09:19:16 2015 NOTE: FlushIpNetTable failed on interface [13] {E42AE964-9548-441C-B22D-DA96678163CA} (status=5) : Accès refusé. 
Thu May 07 09:19:18 2015 TEST ROUTES: 11/11 succeeded len=11 ret=1 a=0 u/d=up
Thu May 07 09:19:18 2015 MANAGEMENT: >STATE:1430983158,ADD_ROUTES,,,
Thu May 07 09:19:18 2015 C:\Windows\system32\route.exe ADD XXX.XXX.0.0 MASK 255.255.192.0 XXX.XXX.251.237
Thu May 07 09:19:18 2015 env_block: add PATH=C:\Windows\System32;C:\WINDOWS;C:\WINDOWS\System32\Wbem
Thu May 07 09:19:18 2015 ERROR: Windows route add command failed: returned error code 1
Thu May 07 09:19:18 2015 C:\Windows\system32\route.exe ADD .64.0 MASK 255.255.224.0 XXX.XXX.251.237
Thu May 07 09:19:18 2015 env_block: add PATH=C:\Windows\System32;C:\WINDOWS;C:\WINDOWS\System32\Wbem

En effet pour "pousser" les routes il faut les droits "administrateur".

Je retrouve les mêmes erreurs quand j'utilise DipiRunas alors que les 3 processus :
openvpn-gui.exe, openvpn.exe, conhost.exe
sont bien lancé sous le compte "administrateur@domaine" renseigné dans le fichier .dra

NB : J'ai remarqué qu'en exécutant DipiRunas pour lancer open vpn, la fenêtre de l'UAC demandant l’élévation de privilège n'apparait pas.

Voila si tu as un moment pour voir ça ...

[réponse de damien, le 07/05/2015 à 21h31]

Bizarre, en principe il n'y a que sous le compte local administrateur que la fenêtre de l'UAC n'apparaît pas... à moins que le niveau de l'UAC ait été abaissé bien sûr.

Là comme ça je ne vois pas... Peut-être un problème de passage de paramètres ? Tu peux m'envoyer la ligne de commandes ?


Réaction n°12 

par visite le 28/01/2015 @ 11:30

Juste un énorme bravo pour ce petit utilitaire si pratique !

[réponse de damien, le 28/01/2014 à 18h34]

Ton message me fait doublement plaisir : primo parce que c'est toujours agréable de recevoir des compliments ; et secundo car il y a si peu de retours sur cette appli que j'en viens à me demander si elle est vraiment utile à quelqu'un. Alors merci à toi. wink


Réaction n°11 

par utilisateur le 26/02/2014 @ 10:38

Juste un énorme merci pour cette version stable et fonctionnelle.
Je vais de paramétrer sur un domaine et l'astuce donnée par arb69 (commentaire 2) fonctionne bien : user@domain

encore merci !

 

[réponse de damien, le 26/02/2014 à 17h13]

Merci pour ce retour positif.
 
Ça fait plaisir que certains utilisent cette appli dont on m'a récemment dit qu'elle était trop compliquée à mettre en œuvre. Je me réjouis donc de voir que ce n'est visiblement pas insurmontable ! wink

Réaction n°10 

par Gillou972 le 23/01/2014 @ 20:31

Je disais donc que en simultané je testais DipiRunAs.Je voudrais octroyer les droits admin (silencieusement) à un script qui permettrait de supprimer les imprimantes voulues.

Voici le contenu des zones respectivement:1. Fichier de configuration: \\WX001\C$\windows\temp\suppimp.dra
2. Exécutable: %windir%\system32\cmd.exe
3. Paramètres: /c C:\windows\temp\SuppImp.bat %1 (là ça coince)
4. Administrateur@%computername% (là aussi ça coince)
En lisant l'historique passionnant -les ados ne se rendent pas compte des efforts effectués pour ne plus les entendre se plaindre - de l'outil, j'ai bien conscience qu'il est surtout fait pour du "one shot", très efficacement qui plus est.
Mais je suis un Désolé je ne vois pas comment faire en l'état actuel des choses, apparemment Dipi n'est pas comme EGA et n'accepte pas les variables systèmes, ce serait assez pratique, sinon pour chaque poste je serai amené à créer un .dra spécifique..collossal.
La variable %1 serait bien aussi à prendre en compte.
Quand bien même, ça n'aurait pas été un obstacle si Dipi /create pouvait prendre en compte un fichier .ini par exemple pouvant généré un.dra à la volée, je vois d'ici une boucle donnant en paramètre le password pour générer des .dra personnalisés à la chaine..oh la la tes sourcils se lèvent, oui je suis spécialisé dans les trucs tordus , allez c'est pour l'avancée de la science .
Mon .dra a fonctionné ..une fois, car j'ai remplacé la commande
c:\windows\system32\rundll32.exe printui.dll,PrintUIEntry /dl /n %NAME% /q par printuiW7.exe /dl /n %NAME% /q
Mais au moment de l'exécution j'ai eu la fenêtre de confirmation UAC pour printuiW7.exe, et j'ai aussi du mettre la variable %NAME% en dur avec "EPSON AL-M2000 Advanced - Principale blanc (Copie 3)".
Un conseil ?

[réponse de damien, le 23/01/2014 à 20h46]

Un conseil ?! STOP !!!!!! On se calme, on respire par le nez et on fait les choses sé-quen-tie-lle-ment ! Ch'uis pas hyperactif moi !
Dans un premier on va tâcher de faire fonctionner MigrImp (et donc de m'envoyer une copie d'écran comme demandé dans ma réponse précédente) sans DipiRunAs, on y passera dans une seconde étape.
Bonne soirée.

Réaction n°9 

par Gillou972 le 23/01/2014 @ 14:58

Euh, en plus des smileys les retours chariots non plus n'ont pas l'air de passer bien, à moins qu'il faille les doubler, le script est plutôt comme ça:
set NAME=%1%

rundll32 printui.dll,PrintUIEntry /dl /n %NAME% /q
Mais tu avais compris.
Je pense justement tester MigrImp via Tâche Planifiée et Script Logon, les GPO ne me sont pas accessibles en direct et j'évite d'en abuser...
Question: la plupart des fichiers de données pour tes outils doivent-ils être en codage ANSI ou peut-on les mettre en UNICODE ??

 

[réponse de damien, le 23/01/2014 à 20h34]

Il y a effectivement des soucis de formatage de certains messages, mais je n'ai pas creusé si ça concernait un ou tous les navigateurs... Je sais que c'est chiant mais je n'y peux pas grand chose si ce n'est attendre une mise à jour du CMS et de l'éditeur qu'il embarque.
 
A part DipiQuizz et DipiRunAs qui sont des développements récents en C#, les autres sont tous en VB5 : ils ne prennent donc pas en compte les encodages sur plusieurs octets. Donc pas d'UNICODE, UTF8 et consorts, c'est de l'ASCII ou ANSI qu'il faut utiliser.

Réaction n°8 

par Gillou972 le 23/01/2014 @ 14:47

e Quand on voit avec quelle facilité tu nous pond un tel script, je me sens comme "le petit scarabée" n
Sinon, pour faire court, on va dire que j'y ai pensé et déjà fait des scripts d'installation (VNC...) basés sur le principe mais, pour des questions de "sécurité" et de "déontologie" les grands manitous préfèrent qu'on use avec parcimonie des outils comme psexec dont ils font bloquer joyeusement les fonctionnalités.
On doit faire avec les moyens du bord et à plus basse échelle, des trucs marrants comme copy bidule dans %temp%, exécute bidule dans %temp%, bref la joie. Mais rien d'impossible, faut composer avec la bande AsInvoker et cie  et ton script est très interessant. Merci maître.
PS: c'est pas important, mais j'ai remarqué que 60% des smileys ne s'affichent pas dans le message final

 

[réponse de damien, le 23/01/2014 à 20h32]

Euh... je n'ai fait que peaufiner (pour le rendre utilisable par d'autres) un script que j'avais écrit il y a bien longtemps...
 
S'agissant des réticences des "grands manitous" quant à l'utilisation de ce genre d'outil, elles sont compréhensibles. Sauf que parfois à côté de ça ils nous demandent de faire l'impossible pour traiter tel ou tel besoin urgent, et les méthodes standards ne permettent généralement pas de répondre à ces situations d'urgence. Et dans ces cas-là ils ferment volontairement les yeux face à l'utilisation de certaines "bidouilles" qui peuvent faire gagner du temps.
 
Pas compris ton histoire de smileys...

Réaction n°7 

par Gillou972 le 23/01/2014 @ 14:15

Milles excuses Damien, je suis un peu confus dans mes explications parce que je gère beaucoup (trop) de choses en simultanée et que j'écris mes messages en plusieurs fois comme tu l'as deviné.
Pour faire court, j'ai regardé de plus près MigrImp et je pense que s'il passe la barrière de l'élévation de droits avec succès il remplira amplement le rôle du fameux script SuppImp.bat (qui n'est pas sorcier, la commande est principalement): 
set NAME=%1%rundll32 printui.dll,PrintUIEntry /dl /n %NAME% /q
En gros t'as un "script" qui est lancé au logon quotidiennement, il parcourt une BDD (alimentée manuellement) comportant les ports qu'on veut supprimer. Il compare avec les ports existants du poste, si le %NAME% existe, le SuppImp.bat est lancé, fin de l'histoire.
C'est plus clair, j'aurais du commencer par là, mea culpa 

 

[réponse de damien, le 23/01/2014 à 14h21]

Je t'avouerais que je ne capte pas trop ce que tu fais avec les ports mais le principal est que toi tu aies compris comment fonctionne l'outil. Si tu arrives à tes fins ce sera parfait. wink


Réaction n°5 

par Gillou972 le 22/01/2014 @ 23:42

Mdrr 2, "trucs tordus", non sérieux désolé pour la migraine mais c'est vrai que j'excelle dans la simplification complexe,ceci dit le problème de "l'élévation" d'un exécutable en local marche bien, quand on a la main dessus.C'est pour automatiser le procédé à distance et sur tout un parc que c'est ch...ardu, je cherche je cherche n

 

[réponse de damien, le 23/01/2014 à 12h05]

Donc ce que tu cherches à faire, c'est exécuter une appli sur un poste distant via DipiRunAs ? Pour formuler ça différemment : depuis ta machine A, tu veux pouvoir demander à la machine distante B de lancer une appli sous un compte spécifié ? C'est bien ça ou j'ai le cerveau à l'envers ce matin ?!
 
Si c'est bien ça, tu n'y parviendras pas avec mon outil uniquement. Lui ne fait qu'exécuter localement une commande sous une identité définie ; il ne permet pas de le faire à distance. Il te faudra donc l'utiliser conjointement avec une méthode d'exécution de code à distance (PSEXEC par exemple, ou via WMI).
 
Exemple simple de script permettant d'exécuter du code à distance via WMI :
 

RunDist.vbs

' Script écrit par D.PONNELLE, noCopyright 2014 Dipisoft
'
' Objet 
' ~~~~~
' Lancement d'un process sur une machine distante via WMI
 
Option Explicit
 
Dim objWMIService, objProcess, objProgram, objExec
Dim strComputerName, strLigneDeCommande
 
Do
   strComputerName = (InputBox("Veuillez saisir l'adresse ou le nom de la machine cible.", "RunDist", strComputerName))
 
   If strComputerName = "" then exit do
 
   On Error Resume Next
   Set objWMIService = Nothing
   Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!//" & strComputerName & "/root/cimv2")
   On Error Goto 0
 
   If objWMIService Is Nothing Then
      MsgBox "La machine distante ne répond pas ou n'accepte pas les connexions WMI.", 16, "Rundist sur " & strComputerName
 
   Else
      strLigneDeCommande = (InputBox("La machine répond, veuillez saisir la ligne de commande à exécuter.", "RunDist", strLigneDeCommande))
 
      If strLigneDeCommande = "" then exit do
 
      Set objProcess = objWMIService.Get("Win32_Process")
      Set objProgram = objProcess.Methods_("Create").InParameters.SpawnInstance_
      objProgram.CommandLine = strLigneDeCommande
      Set objExec = objWMIService.ExecMethod("Win32_Process", "Create", objProgram)
 
      If objExec.ReturnValue = 0 Then
         MsgBox "Le process n°" & objExec.ProcessId & " a été créé avec succès.", 64, "Rundist sur " & strComputerName
 
      Else
         If IsNull(objExec.ReturnValue) Then
            MsgBox "La création du process distant a échoué.", 16, "Rundist sur " & strComputerName
 
         Else
            MsgBox "La création du process distant a réussi mais l'erreur " & objExec.ReturnValue & " s'est produite.", 48, "Rundist sur " & strComputerName
         End If
      End If
   End If
Loop
 
Wscript.Quit
 

Réaction n°5 

par Gillou972 le 22/01/2014 @ 21:19

Bon c'est peut-être important alors j'ajoute que le SuppImp.bat spécifié dans le fichier de données .dra comporte un argument (utilisé en %1% dans le .bat) tel que:
ServeurDossierSuppImp.bat "EPSON AL-M2000 Advanced - Principale blanc (Copie 1)"
C'est le nom de l'imprimante à supprimer qui est spécifié en argument.Le .bat mettant en oeuvre printui.dll, je vous fais grâce des détails sordides 

 

[réponse de damien, le 23/01/2014 à 07h35]

En fait, je pense que ce serait plus simple pour moi de comprendre si tu me faisais un .zip avec le fichier suppimp.bat et le fichier .dra... et en m'expliquant en une fois (j'ai du mal à suivre quand l'info est éparpillée dans une demi-douzaine de messages) et clairement ce que tu cherches à faire et comment tu t'y prends. frown