Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1380 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Script Réseau en VBscript et démarrage de Windows

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Script Réseau en VBscript et démarrage de Windows

n°1388465
steelywolf
Y a ka
Posté le 15-06-2006 à 21:13:27  profilanswer
 

Besoin d'aide sur du VBscript a interfacer avec un Serveur nas et un Windows.  
---------------------------------------------------------------------------  
Voilà mon problème :  
   
J'ai créé un VBscript qui me permet de mapper les drives d'un Serveur Nas  
ce script dé-map les drives du Serveur puis les re-map, comme cela ça permet de mapper de façon sûr.  
   
J'avais l'intention de mettre ce script dans le démarrage de XP mais voilà le problème, cela fonctionne une fois tous les X, car il arrive souvent que le réseau ne soit pas encore actif là ou XP exécute le script ; alors dans ce cas rien ne se fait  
   
   
Comment pourait on faire démarrer ce script au démarrage d'un Windows, tout en connaissant si le réseau est actif pour le faire et de patienter si ce dernier n'est pas actif avant de lancer le script ?  
   
Je suis preneur de toutes solutions, même en VBScript en complément de mon prg pour tester si le LAn et actif ou non avant de lancer mon script.  
   
 
J'ai essayé le sleep + n secondes mais cela reste un peu aléatoire, je suis plus partant pour une solution du style "Tant que réseau inactif alors attendre", il doit bien y avoir une api windows par défaut pour cela ou autre chose....
 
 
PLEASE HELP...... je suis avide de connaissance la dessus, j'aime apprendre et c'est un point qui me tient à coeur...
 
 
Merci à tous :)
 
 
Voici ci dessous le contenu de mon fichier.vbs  
   
' / Serveur Nas connection share ressources /  
   
' declarations  
option explicit  
   
Dim objnetwork, objfile, objfolder, objfso, objshell, checkdrive  
Dim intdrive, alreadyconnected, intbcl  
Dim strdrv, strmap, strmapS, struser, strpwd  
   
   
' initialisation for network  
set objfso = createobject("Scripting.filesystemobject" )  
set objnetwork = createobject("wscript.network" )  
   
' initialisation for shell command  
set objshell= createobject("wscript.shell" )  
set checkdrive =objnetwork.enumnetworkdrives()  
   
' Pass on error to next full command  
On error resume next  
   
' Delete all mapped drive linked or not  
for intbcl = 1 to 8  
 select case intbcl  
  Case 1  
   strdrv = "L:"  
   strmap ="\\Diskstation\Html"  
   strmapS ="\\Diskstation\Html$"  
  Case 2  
   strdrv = "M:"  
   strmap ="\\Diskstation\Workhome"  
   strmapS ="\\Diskstation\Workhome$"  
  Case 3  
   strdrv = "N:"  
   strmap ="\\Diskstation\Private"  
   strmapS ="\\Diskstation\Private$"  
  case 4  
   strdrv = "O:"  
   strmap ="\\Diskstation\Temp"  
   strmapS ="\\Diskstation\Temp$"  
  case 5  
   strdrv = "P:"  
   strmap ="\\Diskstation\Common"  
   strmapS ="\\Diskstation\Common$"  
  case 6  
   strdrv = "Q:"  
   strmap ="\\Diskstation\Exchange"  
   strmapS ="\\Diskstation\Exchange$"  
  Case 7  
   strdrv = "R:"  
   strmap ="\\Diskstation\Advance"  
   strmapS ="\\Diskstation\Advance$"  
  Case 8  
   strdrv = "S:"  
   strmap ="\\Diskstation\Public"  
   strmapS ="\\Diskstation\Public$"  
 end select  
   
 if objfso.DriveExists(strdrv) then  
  objnetwork.removenetworkdrive strdrv, True, True  
  'objshell.popup "Map drive " & strmap & " - " & strdrv & " disconnected successfully"  
 end if  
   
next  
   
   
' Connect all mapped drive  
for intbcl = 1 to 8  
 ' init var to false  
 alreadyconnected = False  
 select case intbcl  
  Case 1  
   strdrv = "L:"  
   strmap ="\\Diskstation\Html"  
   strmapS ="\\Diskstation\Html$"  
   struser = "myuser"  
   strpwd = "synology"  
  Case 2  
   strdrv = "M:"  
   strmap ="\\Diskstation\Workhome"  
   strmapS ="\\Diskstation\Workhome$"  
   struser = "myuser"  
   strpwd = "synology"  
  Case 3  
   strdrv = "N:"  
   strmap ="\\Diskstation\Private"  
   strmapS ="\\Diskstation\Private$"  
   struser = "myuser"  
   strpwd = "synology"  
  case 4  
   strdrv = "O:"  
   strmap ="\\Diskstation\Temp"  
   strmapS ="\\Diskstation\Temp$"  
   struser = "myuser"  
   strpwd = "synology"  
  case 5  
   strdrv = "P:"  
   strmap ="\\Diskstation\Common"  
   strmapS ="\\Diskstation\Common$"  
   struser = "myuser"  
   strpwd = "synology"  
  case 6  
   strdrv = "Q:"  
   strmap ="\\Diskstation\Exchange"  
   strmapS ="\\Diskstation\Exchange$"  
   struser = "myuser"  
   strpwd = "synology"  
  Case 7  
   strdrv = "R:"  
   strmap ="\\Diskstation\Advance"  
   strmapS ="\\Diskstation\Advance$"  
   struser = "myuser"  
   strpwd = "synology"  
  Case 8  
   strdrv = "S:"  
   strmap ="\\Diskstation\Public"  
   strmapS ="\\Diskstation\Public$"  
   struser = "myuser"  
   strpwd = "synology"  
 end select  
   
   
 if objfso.folderexists(strmapS) then  
  objnetwork.mapnetworkdrive strdrv, strmapS, False, struser, strpwd  
  alreadyconnected = True  
 elseif objfso.folderexists(strmap) then  
  objnetwork.mapnetworkdrive strdrv, strmap, False, struser, strpwd  
  alreadyconnected = True  
 end if  
   
 ' confirm failed connection  
 if alreadyconnected = False then  
  objshell.popup "Map nas drive " & strmap & " - " & strdrv & " failed to reconnect"  
 end if  
   
next  
   
' end of script  
Wscript.quit  
   
   
Merci à tous  
Steely


---------------
Steely
mood
Publicité
Posté le 15-06-2006 à 21:13:27  profilanswer
 

n°1392010
pilosite
Posté le 21-06-2006 à 11:47:35  profilanswer
 

bonjour,
 
tu as un paramètre de GPO qui te permet d'attendre la montée des lecteurs réseaux avant de lancer les scripts de logon, c'est plus simple :
 
Computer Configuration\Administrative
Templates\System\Logon\Always wait for the network at
computer startup and logon

n°1394026
steelywolf
Y a ka
Posté le 24-06-2006 à 00:16:31  profilanswer
 

pilosite a écrit :

bonjour,
 
tu as un paramètre de GPO qui te permet d'attendre la montée des lecteurs réseaux avant de lancer les scripts de logon, c'est plus simple :
 
Computer Configuration\Administrative
Templates\System\Logon\Always wait for the network at
computer startup and logon


 
 
Je viens juste de rentrer d'Alsace, pour ma mutation ; donc sorry si je n'ai pu répondre avant
 
Peux tu m'en dire plus sur le GPO car je ne connais pas cela et comment implémenter cela avec mon VBscript ?
 
MErci bcp  
Slts
Steely


---------------
Steely

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Script Réseau en VBscript et démarrage de Windows

 

Sujets relatifs
[VBscript] Envoi de mailOpenRowSet sur fichier en partage sur reseau
[cherche] libguide.lib sous windowsformulaire HTML sans script CGI
recuperer l'adress mac de pc en reseau /batch[Resolu]Probleme avec Windows Installer sous .NET pour les raccourc
Execution d'un script à distance : linux -> winXPProblème avec le script prog SquirrelMail...
extinction de postes sur le réseauWindows CE et Visual Studio C++ 2003 .net
Plus de sujets relatifs à : Script Réseau en VBscript et démarrage de Windows


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR