Page 1 sur 1
[R] Runas et lecteur réseau
Posté : dim. 15 juin 2008 21:53
par john56
bonjour, en environnement scolaire, je cherche à exécuter un logiciel avec les droits admin qui va chercher des données sur un lecteur réseau. (comme un cd rom en fait, qui fait une installation du logiciel et va chercher ensuite les données sur le cd).
je connecte d'abord le lecteur L qui pointe vers le partage (c'est un copier coller du contenu du cd-rom dans ce partage)
voila mon script qui lui est sur le lecteur réseau L (c'est là que je mets tous les raccourcis logiciels pour tous mes utilisateurs) :
Code : Tout sélectionner
FileChangeDir ("C:\Program Files\SITTELLE\WinBirds 4.0")
RunAs ("admin", "serveur", "motdepasse", "", "winbirds.exe")
cela lance bien le logiciel mais au moment où il a besoin des images, il m'annonce qu'il ne trouve pas m:/data... or je verifie : M est bien connecté.
voir ici un
screenshot
autre précision, si je lance depuis le raccourci (icone du logiciel), là tout se passe bien.
si qqun peut m'éclairer.
Merci.
Re: [..] Runas et lecteur réseau
Posté : lun. 16 juin 2008 00:30
par Tlem
Merci de respecter les règles de présentation =>
Règles.
En ce qui concerne votre problème, essayez de spécifier le paramètre "
workingdir" de la commande
RunAs.
Peut être aussi que votre logiciel possède une option lors de sont lancement (Regarder les propriétés du raccourcis).
Re: [..] Runas et lecteur réseau
Posté : lun. 16 juin 2008 10:16
par john56
Merci de votre réponse
pour l'option @workingdir, je n'ai malheureusement pas compris la doc fournit avec autoit et je n'avance guère, donc si je pouvais avoir un coup de pouce supplémentaire ou un bon lien qui expliquerait cela...
pour l'histoire du raccourci, les propriétés semblent classiques.
cible : "C:\Program Files\SITTELLE\WinBirds 4.0\winbirds.exe"
demarrer dans ""C:\Program Files\SITTELLE\WinBirds 4.0\"
Re: [..] Runas et lecteur réseau
Posté : lun. 16 juin 2008 12:05
par jbnh
Tlem parle du workingdir de la commande RunAs, je pense, pas de la macro
Code : Tout sélectionner
RunAs ( "username", "domain", "password", logon_flags, "filename" [, "[b]workingdir[/b]" [, flag[, standard_i/o_flag]]] )
Re: [..] Runas et lecteur réseau
Posté : lun. 16 juin 2008 12:24
par john56
oui j'ai vu la syntaxe sur la doc, mais cela ne m'avance pas
Re: [..] Runas et lecteur réseau
Posté : lun. 16 juin 2008 20:42
par tplanet
Salut,
Est-ce que l'usager "admin" a accès au m:\ ? Si c'est un usager crée sur la station, il ne verra pas le reseau. Il y a le logon_flags qui peut dire au runas d'utiliser les paramètres de l'utilisateur en cours, mais j'ai pas testé encore. J'essai et je reviens.
Thierry
Re: [..] Runas et lecteur réseau
Posté : lun. 16 juin 2008 20:57
par john56
oui admin a acces au m:
Re: [..] Runas et lecteur réseau
Posté : lun. 23 juin 2008 22:55
par tplanet
Salut!
essaie ceci;
Code : Tout sélectionner
RunAs ("admin", "serveur", "motdepasse", 1, @ComSpec, @TempDir)
Dans la fenêtre DOS, tape NET USE, tu devrais voir les mêmes lecteurs réseau que l'application voit une fois démarrée avec le compte utilisé.
Si tu n'as pas les lecteurs voulu, il faudrait essayer de changer le 1 par 0... je crois pas que les autres options puissent être utiles.
0 - Interactive logon with no profile.
1 - Interactive logon with profile.
2 - Network credentials only.
4 - Inherit the calling processes environment instead of the user's.
Si ça a pas fonctionné et que tu as essayé sans succès le 3 et 4, je te suggère d'y aller avec ceci;
Code : Tout sélectionner
#cs
un peu tordu, mais bon... c'est ce que j'utilise faute de mieux
donc...
***si l'utilisateur est admin sur son poste et a accès au m:, on saute par dessus tout ça et lance le programme
***si l'utilisateur est pas admin, on copie cette app sur son c: et on le relance en tant qu'admin
***Une fois relancé en tant qu'admin, on saute la première partie, on fait ensuite un map du lecteur réseau voulu et lance le programme en ayant le m:.
***Lorsqu'on ferme le programme, tout revient comme avant
#ce
#NoTrayIcon
If Not IsAdmin() Then
FileCopy(@AutoItExe, "c:\Tempapp\",8)
RunAsWait ("admin", "serveur", "motdepasse", 1, "d:\Tempapp\" & @ScriptName, @TempDir) DirRemove("d:\Tempapp\",1)
Exit
EndIf
;~ Ensuite on vérifie si on voit la source, sinon, on refait une connection
If Not FileExists("m:\data") Then
Runwait("net use m: \\serveur\ ")
;~ ou si ça fonctionne pas: Runwait("net use m: \\serveur\ /USER:admin motdepasse")
Sleep (3000)
;~ Si on voit pas la source maintenant, ça mérite de l'aide
If Not FileExists("m:\data") Then
MsgBox(16,"Problème!","L'assignation du répertoire m:\data n'a pas fonctionné... Contactez support")
Exit
Endif
EndIf
;~ Maintenant qu'on est admin et qu'on a le m: allons y pour le grand coup...
FileChangeDir ("C:\Program Files\SITTELLE\WinBirds 4.0")
RunWait ("winbirds.exe")
Exit
Re: [..] Runas et lecteur réseau
Posté : lun. 23 juin 2008 23:07
par john56
merci de ta réponse.
J'ai contourné le pb pour ce logiciel en récupérant des clefs registres qui s'installaient au lancement du logiciel.
J'ai ensuite tout mis dans un .reg que j'importe quand un user classique lance ce logiciel et çà marche.
Mais ton script pourra peut etre m'aider pour d'autres logiciels qui ne marchent pas forcément pareil.
Merci.