|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre à l'essai
![]() Inscription : octobre 2009 Messages : 63 ![]() |
Bonjour,
J'ai un programme lancé en tant que service qui me permet de monter des lecteurs réseaux avec la commande "net use". Il peut y avoir 3 types de lecteur réseau : -> lecteur réseau public -> lecteur réseau avec login/mot de passe qui correspond au login/mot de passe de ma session en cours -> lecteur réseau avec login/mot de passe qui ne correspond pas au login/mot de passe de ma session en cours Ce troisième type de lecteur réseau me pose problème car le net use devient bloquant. En effet, un net.exe est lancé et tant qu'on ne le tue pas dans la liste des processus, mon programme lancé en service bloque. Voici un exemple simplifier de mon programme : Code :
-> net use x: \\192.168.2.147\Partage -> net use y: \\192.168.2.162\MonPartage -> net use z: \\192.168.2.162\MonPartagePrive Le lecteur x est monté sans problème (partage public). Le lecteur y est monté sans problème (login/mot de passe correspond au login/mot de passe de ma session en cours). Le lecteur z n'est pas monté et est bloquant (login/mot de passe ne correspond pas au login/mot de passe de ma session en cours). Le lecteur z est bloquant car durant l'exécution de la commande en tant que service, net use demande le login/mot de passe afin de pouvoir connecter z. Savez vous comment éviter cet état bloquant ? Merci par avance pour vos réponses, Sango. |
||
|
|
00
|
|
|
#2 |
|
Membre à l'essai
![]() Inscription : octobre 2009 Messages : 63 ![]() |
J'ai résolu mon soucis.
Merci à ceux qui se sont penchés sur le problème
|
|
|
00
|
|
|
#3 |
|
Membre à l'essai
![]() Inscription : octobre 2009 Messages : 63 ![]() |
Bonjour,
J'ai une nouvelle question sur la commande net use. Sur mon Windows serveur 2003, je lance une invite de commande. Dans cette invite de commande je tape la commande "net use" qui m'informe de l'état des lecteurs réseaux. Pour un d'entre eux, il m'indique qu'il est "Non disponible". Savez vous où Windows va chercher cette information ou comment il arrive à l'obtenir ? Peut on la récupérer ? Merci. |
|
|
00
|
|
|
#4 | ||
|
Membre émérite
![]() Administrateur systèmes et réseaux Inscription : avril 2006 Messages : 970 ![]() |
Citation:
Citation:
|
||
|
|
00
|
|
|
#5 | ||
|
Membre à l'essai
![]() Inscription : octobre 2009 Messages : 63 ![]() |
Bonjour gretch,
En fait j'ai posé ces questions car j'ai le soucis du "net.exe bloquant" avec les lecteurs réseaux qui sont indisponibles avec mon ancien programme ci dessus. La commande net use est lancée avec un programme en mode service. J'ai aussi testé une approche différente en utilisant des fonctions msdn : Code :
c => disque dur, res = 3 e => lecteur cd/dvd, res = 5 x => lecteur réseau, res = 4 y => lecteur réseau, res = 4 Deux lecteurs réseaux ne sont pas remontés : z => login/mot de passe ne correspond pas au login/mot de passe de ma session en cours, pas possible de se connecter sans connaître le mot de passe w => lecteur marqué comme "non connecté" Par contre quand mon programme est lancé en tant que service, seulement "c" et "e" sont remontés, les lecteurs x et y ne sont pas reconnus et je ne sais pas pourquoi ... Si vous avez des idées, je suis preneur :p |
||
|
|
00
|
|
|
#6 | ||
|
Membre émérite
![]() Administrateur systèmes et réseaux Inscription : avril 2006 Messages : 970 ![]() |
Citation:
Citation:
post scriptum : en gros, ton script fait un net use si je comprend bien (hooo j'ai du mal aujourd'hui...)^^ essaie ça : Code :
wmic netuse get name, status, resourcetype |
||
|
|
00
|
|
|
#7 | |
|
Membre émérite
![]() Administrateur systèmes et réseaux Inscription : avril 2006 Messages : 970 ![]() |
après relecture j'ai l'impression d'avoir mal cerné ton problème :/
Citation:
net use dans le cas 2 essai wmic sinon c'est que j'ai encore tout compris d travers ^^ |
|
|
|
00
|
|
|
#8 |
|
Membre à l'essai
![]() Inscription : octobre 2009 Messages : 63 ![]() |
En fait, j'ai déjà les lecteurs réseaux visibles dans l'explorateur Windows.
Je peux accéder via l'explorateur aux données des lecteurs réseaux suivants : -> x -> y Je ne peux pas accéder via l'explorateur aux données des lecteurs réseaux suivants : -> w => la machine ne ping pas -> z => je ne connais pas le login/mot de passe pour m'y connecter Ces deux derniers lecteurs sont marqués comme "Non disponible" quand je lance un 'net use' dans l'invite de commande et donc en mode classique, pas en mode service. Mon programme lancé en mode service me sert à remonter tous les lecteurs disponibles via une interface qui va lister le contenu des lecteurs. Le "net use" sur les lecteurs w et z sont bloquants. On est obligé de tuer à la main le processus "net.exe" afin que l'exécution de mon programme continue. Je n'ai pas trouvé de "time out" pour le net use. Ne pas me connecter à ces deux lecteurs ne me dérange pas et (je pense) n'est pas possible. Ce que je veux éviter c'est l'effet bloquant. Je vais essayer de voir du côté de wmic, je te remercie et te tiens au courant des avancées PS : connaîtrais-tu des fonctions en 'c' qui permettraient d'exécuter la commande net use ou wmic et de retourner les résultats obtenues dans une variable ? |
|
|
00
|
|
|
#9 |
|
Membre à l'essai
![]() Inscription : octobre 2009 Messages : 63 ![]() |
J'ai peut être trouvé ce lien :
http://stackoverflow.com/questions/1...-c-application |
|
|
00
|
|
|
#10 | |
|
Membre émérite
![]() Administrateur systèmes et réseaux Inscription : avril 2006 Messages : 970 ![]() |
Citation:
déjà, sont t'ils nécessaire ? (on pourrait peut etre les faire sauter ^^ ) bon ensuite, pour w le problème est plus bas niveau, effectue un diagnostique réseau pour cette machine. pour z c'est différent, tu te fait jeter ! réattribue toi les droits (Sécurité & Partage)sur cette ressources(rassure moi c'est bien toi l'admin de ta boite ^^ ) pour ton problème de langage c je n'y connais rien mais pour ça google fera tres bien l'affaire ^^ |
|
|
|
00
|
|
|
#11 | |
|
Membre à l'essai
![]() Inscription : octobre 2009 Messages : 63 ![]() |
Citation:
Nous pouvons dire qu'il n'est pas possible de lister les éléments de ce type de lecteur réseau mais cela ne doit pas être bloquant ^^ Pour le problème de w, je pense pouvoir m'en sortir en testant le retour de la fonction system() à laquelle je demande de faire un ping. Mais pour le z, je n'ai pas accès au mot de passe (ce qui est normal d'un point de vue de sécurité). Je ne peux pas me ré-attribuer les droits sur ce lecteur réseau. Je vais chercher plus d'information sur mon meilleur amis google
|
|
|
|
00
|
|
|
#12 |
|
Membre à l'essai
![]() Inscription : octobre 2009 Messages : 63 ![]() |
Bonjour,
J'ai résolu mon problème avec des threads, des tests plus poussés vont être effectués. Je remercie gretch pour sa colaboration
|
|
|
00
|
|
|
#13 |
|
Membre émérite
![]() Administrateur systèmes et réseaux Inscription : avril 2006 Messages : 970 ![]() |
thx ^^
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com