Page 1 sur 1

[R] Problème de Run sur Windows Vista

Posté : sam. 18 janv. 2014 16:38
par Boulanza
Bonjour,
Sous DOS les commandes suivantes fonctionnent correctement sous Windows VISTA:

Code : Tout sélectionner

C:\>subst w: "C:\Program Files"
C:\>w: /d
Lorsque j’utilise le script AutoIt suivant sous Windows VISTA ne se lancer même pas :

Code : Tout sélectionner

# RequireAdmin
$command = "subst W: C:\Program Files"
Run(@ComSpec & " /c " & $command, "", @SW_HIDE)
De même pour pour le script:

Code : Tout sélectionner

# RequireAdmin
$command = "subst W: /d"
Run(@ComSpec & " /c " & $command, "", @SW_HIDE)
Remarque : Pas de problème sous Win7 et XP sauf pour Windows VISTA
Merci pour votre aide.

Re: [..]Problème de Run sur Windows Vista

Posté : sam. 18 janv. 2014 17:55
par jguinch
C'est peut-être un problème de quotes...
$command = 'subst W: "C:\Program Files"'

Re: [..] Problème de Run sur Windows Vista

Posté : sam. 18 janv. 2014 19:29
par Boulanza
Merci pour votre suggestion, malheureusement cela ne marche pas.

Re: [..] Problème de Run sur Windows Vista

Posté : sam. 18 janv. 2014 19:39
par labougie
Bonsoir,

En dos les noms longs ou avec un espace doivent être encadrés par des ""
sinon pas de fonctionnement

"C:\Program Files"

labougie

Re: [..] Problème de Run sur Windows Vista

Posté : sam. 18 janv. 2014 20:07
par franco
Bonjour.

Au début du script, on a : # RequireAdmin
Essaye plutôt : #RequireAdmin

Code : Tout sélectionner

#RequireAdmin
$command = 'subst W: "C:\Program Files"'
Run(@ComSpec & " /c " & $command, "", @SW_HIDE)

MsgBox(0,"","appuyez sur OK pour la suite")

$command = 'subst W: /D'
Run(@ComSpec & " /c " & $command, "", @SW_HIDE)
@labougie : il a mis les "" autour de program files. :wink:
Edit : Dans le script autoit, non, je n'avais point vu.



@+

Re: [..] Problème de Run sur Windows Vista

Posté : sam. 18 janv. 2014 23:10
par Boulanza
Pour franco:
Sous Win XP et Win7 le script fonctionne normalement sans problème, mais il ne fonctionne pas sous Windows Vista. Alors Y a-t-il moyen de forcer Windows Vista afin d'exécuter ledit script.
Cordialement.

Re: [..] Problème de Run sur Windows Vista

Posté : dim. 19 janv. 2014 08:39
par jguinch
Est-ce que la commande te renvoi une erreur ?

Code : Tout sélectionner

#RequireAdmin
$command = 'subst W: "C:\Program Files"'
Run(@ComSpec & " /k " & $command, "", @SW_HIDE)
D'autre part, je te conseille d'utiliser RunWait plutôt que Run, car ça risque d'être source de problème par la suite...

Re: [..] Problème de Run sur Windows Vista

Posté : dim. 19 janv. 2014 10:29
par franco
Salut.

@jguinch : je me permet de citer ton code.

@Boulanza :

Essaye de faire cela :

Code : Tout sélectionner

#RequireAdmin
$command = 'subst W: "D:\Program Files" & pause'
RunWait(@ComSpec & " /k " & $command, "", @SW_SHOW)
Avec la pause, ça interrompt le code
Et avec @SW_SHOW, tu verras toi-même l'invite de commande, et donc tu verras si tu as un message d'erreur.

Si tu ne vois que la phrase générée par la pause, c'est que, bizarrement, la commande se fait sans souci.

@+

Re: [..] Problème de Run sur Windows Vista

Posté : dim. 19 janv. 2014 13:27
par labougie
Boulanza a écrit :Pour franco:
Sous Win XP et Win7 le script fonctionne normalement sans problème, mais il ne fonctionne pas sous Windows Vista. Alors Y a-t-il moyen de forcer Windows Vista afin d'exécuter ledit script.
Cordialement.
Bonjour,

Sous vista l'uac est connu aussi pour ces coups tordus :mrgreen: .
Tu peux le désactiver, et ou lancer ton script en mode admin par clique droit "exécuter en tant qu'admin"

je ne connais pas encore bien autoit, mais même avec #RequireAdmin l'uac peut te faire des misères.

parfois cela aide.

labougie

Re: [..] Problème de Run sur Windows Vista

Posté : dim. 19 janv. 2014 14:35
par jguinch
@franco : ah oui, j'avais pas fais gaffe au @SW_HIDE. :oops:
Cela dit, ça ne sert à rien d'ajouter la pause si tu mets le commutateur /k, puisque l'invite de commande reste ouverte.
Quant à @SW_SHOW, il est par défaut :

Code : Tout sélectionner

$command = 'subst W: "C:\Program Files"'
RunWait(@ComSpec & " /k " & $command)

Re: [..] Problème de Run sur Windows Vista

Posté : dim. 19 janv. 2014 15:49
par Boulanza
Bonjour tout le monde,
Merci pour vos repenses sans exception tous les scripts marchent bien sur Win XP et Win7 mais pas sur Win Vista. UAC n'est pas la cause.

Re: [..] Problème de Run sur Windows Vista

Posté : dim. 19 janv. 2014 17:05
par Boulanza
En fin, voici la solution:

Il faut réduire les nuisances de UAC sans désactiver UAC . Pour cela vous devez créer une nouvelle valeur Dword nommée: "EnableVirtualization" voir code ci-dessous :
► Afficher le texte
Code Run
► Afficher le texte
Cordialement.

Re: [..] Problème de Run sur Windows Vista

Posté : dim. 19 janv. 2014 18:24
par jguinch
Si le problème est résolu, merci de mettre un [R] dans le sujet du premier message.

Re: [R] Problème de Run sur Windows Vista

Posté : dim. 25 mai 2014 15:57
par Boulanza
c'est fait merci.

Re: [R] Problème de Run sur Windows Vista

Posté : dim. 25 mai 2014 20:41
par TommyDDR
J'ai été confronté à un problème de subst à mon travail, si ça peut en aider certains :

Sur Windows seven (peut être aussi vista / win 8 ), un subst n'est disponible pour que le type de session qui l'a créé.

J'entends par là :
Si vous faites un subst en non admin, le lecteur créé ne pas visible en admin (et inversement).
C'est assez simple à tester, lancez une console admin, l'autre non, faite un subst dans l'une et essayez d’accéder au nouveau lecteur dans l'autre.
J'ai donc pris l'habitude de faire mes subst en admin et non admin pour être sur que le lecteur soit disponible dans tous les programmes.

Re: [R] Problème de Run sur Windows Vista

Posté : dim. 25 mai 2014 21:21
par Boulanza
TommyDDR Bonsoir,
Oui, effectivement vos constatations sont exactes, ce comportement de Win: vista,7 et 8 est vraiment bizarre! ... Trop bizarre. Mais la solution à ce Phénomène, sans explication logique, a pris fin une fois j'ai installé toutes les mises à jours proposées par Microsoft !!
Cordialement.

Re: [R] Problème de Run sur Windows Vista

Posté : dim. 25 mai 2014 22:35
par jguinch
En complément, j'ajoute qu'on peut se passer de la commande Subst en utilisant _WinAPI_DefineDosDevice().

Re: [R] Problème de Run sur Windows Vista

Posté : dim. 25 mai 2014 22:38
par Boulanza
Merci,c'est une bonne idée