Je souhaiterais savoir si il existe une astuce pour charger un script propre
au site sur lequel on se connecte.
Je m'explique :
Nous avons 4 sites.
Sur chacun des sites, nous avons des serveurs 2000 SP4 avec AD et
réplication des Annuaires.
Nous avons des personnes nomades (avec des pc portables) qui doivent se
connecter sur chacun des sites. Pour cela nous avons installé sur chaque
serveur le service DHCP afin qu'elles puissent se connecter au réseau du
site sur lequel elles se trouvent.
Ma question est la suivante :
Est-il possible que la personne qui se connecte charge le script propre au
site en fonction du nom du serveur DHCP du site. (Avoir les bons mappages
réseaux, imprimantes, etc...)
@echo off setlocal for /F "usebackq tokens=2,* delims=:" %%i in (`ipconfig /all ^|find "Serveur DHCP"`) do call :SUB %%i endlocal goto :EOF
:SUB if [%1]==[192.168.1.21] call :TRAIT21 if [%1]==[192.168.1.123] call :TRAIT123 if [%1]==[192.168.1.222] call :TRAIT222 goto :EOF
:TRAIT21 echo "Traitement, cas 21" goto :EOF
:TRAIT123 echo "Traitement, cas 123" goto :EOF
:TRAIT222 echo "Traitement, cas 222" goto :EOF
-- @-salutations
Michel Claveau
Xav
Désolé mais je ne comprends pas le script, faut dire que je suis une bille en développement. J'ai remplacé les adresses IP par celles que j'ai au niveau de mes serveurs DHCP mais je n'ai aucun résultat. A quoi sert le GOTO EOF ? Que dois-je faire des TRAIT21, 123, 222 ?
Merci de m'éclairer.
Xav
Il semblerai que le script regarde l'adresse IP du serveur DHCP et en fonction de l'adresse, il lance la fonction
"MC" a écrit dans le message de news:
Un petit batch exemple :
@echo off setlocal for /F "usebackq tokens=2,* delims=:" %%i in (`ipconfig /all ^|find "Serveur DHCP"`) do call :SUB %%i endlocal goto :EOF
:SUB if [%1]==[192.168.1.21] call :TRAIT21 if [%1]==[192.168.1.123] call :TRAIT123 if [%1]==[192.168.1.222] call :TRAIT222 goto :EOF
:TRAIT21 echo "Traitement, cas 21" goto :EOF
:TRAIT123 echo "Traitement, cas 123" goto :EOF
:TRAIT222 echo "Traitement, cas 222" goto :EOF
-- @-salutations
Michel Claveau
Désolé mais je ne comprends pas le script, faut dire que je suis une bille
en développement.
J'ai remplacé les adresses IP par celles que j'ai au niveau de mes serveurs
DHCP mais je n'ai aucun résultat. A quoi sert le GOTO EOF ?
Que dois-je faire des TRAIT21, 123, 222 ?
Merci de m'éclairer.
Xav
Il semblerai que le script regarde l'adresse IP du serveur DHCP et en
fonction de l'adresse, il lance la fonction
"MC" <XX.XmcX@XX.XmclaveauX.com> a écrit dans le message de news:
mn.5b357d6a35aa642c.46195@XX.XmclaveauX.com...
Un petit batch exemple :
@echo off
setlocal
for /F "usebackq tokens=2,* delims=:" %%i in (`ipconfig /all ^|find
"Serveur DHCP"`) do call :SUB %%i
endlocal
goto :EOF
:SUB
if [%1]==[192.168.1.21] call :TRAIT21
if [%1]==[192.168.1.123] call :TRAIT123
if [%1]==[192.168.1.222] call :TRAIT222
goto :EOF
Désolé mais je ne comprends pas le script, faut dire que je suis une bille en développement. J'ai remplacé les adresses IP par celles que j'ai au niveau de mes serveurs DHCP mais je n'ai aucun résultat. A quoi sert le GOTO EOF ? Que dois-je faire des TRAIT21, 123, 222 ?
Merci de m'éclairer.
Xav
Il semblerai que le script regarde l'adresse IP du serveur DHCP et en fonction de l'adresse, il lance la fonction
"MC" a écrit dans le message de news:
Un petit batch exemple :
@echo off setlocal for /F "usebackq tokens=2,* delims=:" %%i in (`ipconfig /all ^|find "Serveur DHCP"`) do call :SUB %%i endlocal goto :EOF
:SUB if [%1]==[192.168.1.21] call :TRAIT21 if [%1]==[192.168.1.123] call :TRAIT123 if [%1]==[192.168.1.222] call :TRAIT222 goto :EOF
:TRAIT21 echo "Traitement, cas 21" goto :EOF
:TRAIT123 echo "Traitement, cas 123" goto :EOF
:TRAIT222 echo "Traitement, cas 222" goto :EOF
-- @-salutations
Michel Claveau
Michel Claveau
Bonsoir !
Dans le désordre :
- ce batch fonctionne avec XP-pro ; il peut y avoir des différences selon les versions de windows. - "GOTO :EOF" c'est l'équivalent d'un RETURN dans d'autres langages - pour commencer à tester, il faut voir si un : ipconfig /all |find "Serveur DHCP" tout seul fonctionne. Cela devrait donner l'IP du serveur DHCP - si l'item précédent fonctionne, pour tester plus, on peut mettre, avant chaque echo "Trait... un echo %* (pour voir le paramètre passé) - à la place des echo "Traitement, cas xxx", il faudra mettre un batch, ou l'appel d'un script.
-- @-salutations
Michel Claveau
Bonsoir !
Dans le désordre :
- ce batch fonctionne avec XP-pro ; il peut y avoir des différences
selon les versions de windows.
- "GOTO :EOF" c'est l'équivalent d'un RETURN dans d'autres langages
- pour commencer à tester, il faut voir si un :
ipconfig /all |find "Serveur DHCP"
tout seul fonctionne. Cela devrait donner l'IP du serveur DHCP
- si l'item précédent fonctionne, pour tester plus, on peut mettre,
avant chaque echo "Trait... un echo %* (pour voir le paramètre
passé)
- à la place des echo "Traitement, cas xxx", il faudra mettre un
batch, ou l'appel d'un script.
- ce batch fonctionne avec XP-pro ; il peut y avoir des différences selon les versions de windows. - "GOTO :EOF" c'est l'équivalent d'un RETURN dans d'autres langages - pour commencer à tester, il faut voir si un : ipconfig /all |find "Serveur DHCP" tout seul fonctionne. Cela devrait donner l'IP du serveur DHCP - si l'item précédent fonctionne, pour tester plus, on peut mettre, avant chaque echo "Trait... un echo %* (pour voir le paramètre passé) - à la place des echo "Traitement, cas xxx", il faudra mettre un batch, ou l'appel d'un script.
-- @-salutations
Michel Claveau
Gilles LAURENT
"Xav" <x.vincent(nospam)@cer42.sideral.fr> a écrit dans le message de news:452cb956$0$5083$ | Bonjour à tous,
Bonjour,
| Je souhaiterais savoir si il existe une astuce pour charger un script | propre au site sur lequel on se connecte.
En complément de la réponse de Michel :
Ci-dessous le script VBScript 'ifInSubnet.vbs' permettant de tester si un poste client se situe dans le sous-réseau spécifié comme argument. Le script devra s'exécuter dans un logon script à l'ouverture de session.
' énumération des interfaces For Each oNetCard In colNetCards If InStr (Join (oNetCard.IPAddress), WScript.Arguments (0)) Then WScript.Quit (1) End If Next
--- Coupez ici : ifInSubnet.vbs ---
-- Gilles LAURENT Me contacter : http://cerbermail.com/?zoTY7ZkLcD
"Xav" <x.vincent(nospam)@cer42.sideral.fr> a écrit dans le message de
news:452cb956$0$5083$ba4acef3@news.orange.fr
| Bonjour à tous,
Bonjour,
| Je souhaiterais savoir si il existe une astuce pour charger un script
| propre au site sur lequel on se connecte.
En complément de la réponse de Michel :
Ci-dessous le script VBScript 'ifInSubnet.vbs' permettant de tester si
un poste client se situe dans le sous-réseau spécifié comme argument. Le
script devra s'exécuter dans un logon script à l'ouverture de session.
' énumération des interfaces
For Each oNetCard In colNetCards
If InStr (Join (oNetCard.IPAddress), WScript.Arguments (0)) Then
WScript.Quit (1)
End If
Next
--- Coupez ici : ifInSubnet.vbs ---
--
Gilles LAURENT
Me contacter : http://cerbermail.com/?zoTY7ZkLcD
"Xav" <x.vincent(nospam)@cer42.sideral.fr> a écrit dans le message de news:452cb956$0$5083$ | Bonjour à tous,
Bonjour,
| Je souhaiterais savoir si il existe une astuce pour charger un script | propre au site sur lequel on se connecte.
En complément de la réponse de Michel :
Ci-dessous le script VBScript 'ifInSubnet.vbs' permettant de tester si un poste client se situe dans le sous-réseau spécifié comme argument. Le script devra s'exécuter dans un logon script à l'ouverture de session.
' énumération des interfaces For Each oNetCard In colNetCards If InStr (Join (oNetCard.IPAddress), WScript.Arguments (0)) Then WScript.Quit (1) End If Next
--- Coupez ici : ifInSubnet.vbs ---
-- Gilles LAURENT Me contacter : http://cerbermail.com/?zoTY7ZkLcD