kixtart et pb windows 9x - Stockage/Sauvegarde - Windows & Software
Marsh Posté le 20-06-2006 à 09:12:17
Bonjour,
J'ai mis en place à mon boulot un script un peu similaire au tien, celui-ci a été testé en 95 nt4 w2000 et xp et tourne depuis plus de 5 ans pour 70 utilisateurs environ.
Il diffère un peu du tien dans la façon d'attribuer les lettres (qui correspondent à des lecteurs réseau),
en gros tous les gens qui se connectent ont un U:, mais celui-ci ne pointe pas vers le même espace.
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
;Groupes globaux dont l'appartenance du user est à tester
$NbGroupes=3
DIM $Groupes[3]
$Groupes[0]='GG_Direction'
$Groupes[1]='GG_service1'
$Groupes[2]='GG_service2
;
;Chaînes désignant le chemin UNC pour établir la connexion
DIM $Connect[3]
$Connect[0]=$NomServ + '\Direction'
$Connect[1]=$NomServ + '\service1'
$Connect[2]=$NomServ + '\service2'
;
;Désignation des lecteurs 'services' disponibles
$NbLecteurs=3
DIM $Lecteurs[3]
$Lecteurs[0]='X:'
$Lecteurs[1]='Y:'
$Lecteurs[2]='Z:'
;
$CptGrp=0
$CptLect=0
WHILE $CptGrp < $NbGroupes
;On sort de la boucle avant que CptGrp = NbGroupes, les tableaux commençant à l'index 0
If INGROUP($Groupes[$CptGrp]) = 1
;1 est retournée si l'utilisateur appartient au grp global (2 si grp local)
USE $Lecteurs[$CptLect] $Connect[$CptGrp]
$CptLect = $CptLect + 1
ENDIF
$CptGrp = $CptGrp + 1
LOOP
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
sinon, je ne vois pas trop ce qui pourrait empecher le tien de fonctionner sur des stations W95...
- l'espace entre InGroup et ( ?
- peut-être la façon dont tu gères ce qui est retourné par InGroup ...essaie case ingroup(...) = 1
Bon courage et donne nous des nouvelles !
Marsh Posté le 15-06-2006 à 21:42:25
bsr,
j'ai mis en place ce script qui ne tourne pas sur les postes équipés de windows 9x ; ces derniers arrivent systématiquement sur le dernier message : "prendre contact avc votre admin.....". pour info j'utilise les dll suivantes : kx16.dll kx32.dll et kx95.dll. avez vous une idée ???
l'objectif étant d'hériter d'un lecteur réseau selon un test d'appartenance à un groupe.
; DECLARATION DES VARIABLES LOCALES
dim $Debug
$Debug=0
dim $Retour
dim $Message
dim $Return
dim $Tab
dim $NomServeurStockage
dim $Map
; INITIALISATION DES VARIABLES
; Pour retour fonction
$Retour=0
; Caractères spéciaux
$Return= CHR(10)
$Tab= CHR(9)
;Texte à afficher
$Message=""
;Définition des serveurs de fichiers
$NomServeurStockageHDD="SERVEUR33HDD"
$NomServeurStockageDPDS="SERVEURDPDS"
$Map="
; Affiche message de bienvenue
; Définition du message de bienvenue
;$Message= $Return + $Return + $Return
;$Message= $Message + " Bienvenue " + $Tab + "..." + $Tab + @FULLNAME + $Tab + $Return
;$Message= $Message + "Dans le domaine " + $Tab + "..." + $Tab + @DOMAIN + $Tab + $Return + $Return
;$Message= $Message + "Nous sommes le : " + @MDAYNO + "/" + @MONTHNO + "/" + @YEAR + $Tab + $Return
;$Message= $Message + "Il est : " + @TIME
;$Message= $Message + $Return + $Return + $Return
;$Message= $Message + "Ce message disparaîtra en fin d'execution..." + $Return
;MESSAGEBOX($Message,"Bienvenue",64,6)
;FLUSHKB
;SetFocus ("Bienvenue" )
;Aiguillage espace de stockage suivant le groupe
SELECT
;$NomServeurStockageHDD=SERVEUR33HDD
;$NomServeurStockageDPDS=SERVEURDPDS
CASE InGroup ("LOCALDSI" )
USE V: "\\serveur33hdd\dsi" /persistent
;IF (EXIST($Map= 1)
;USE V: $Map /PERSISTENT
;IF @ERROR=0 AND $Debug=1
;MESSAGEBOX ("Lecteur V déjà existant",64,6)
;ENDIF
;ENDIF
CASE InGroup ("BDPGLO" )
USE V: "\\serveurdpds\bdp" /persistent
;IF (EXIST($Map= 1)
;USE V: $Map /PERSISTENT
;IF @ERROR=0 AND $Debug=1
;MESSAGEBOX ("Lecteur V déjà existant",64,6)
;ENDIF
;ENDIF
CASE InGroup ("CHER2015" )
USE W: "\\serveur33hdd\cher2015" /persistent
;IF (EXIST($Map= 1)
;USE w: $Map /PERSISTENT
;IF @ERROR=0 AND $Debug=1
;MESSAGEBOX ("Lecteur w déjà existant",64,6)
;ENDIF
;ENDIF
CASE InGroup ("TERRITOI" )
USE W: "\\serveur33hdd\territoi" /persistent
;IF (EXIST($Map= 1)
;USE w: $Map /PERSISTENT
;IF @ERROR=0 AND $Debug=1
;MESSAGEBOX ("Lecteur w déjà existant",64,6)
;ENDIF
;ENDIF
CASE InGroup ("CABINET" )
USE V: "\\serveur33hdd\cabinet" /persistent
;IF (EXIST($Map= 1)
;USE v: $Map /PERSISTENT
;IF @ERROR=0 AND $Debug=1
;MESSAGEBOX ("Lecteur v déjà existant",64,6)
;ENDIF
;ENDIF
CASE InGroup ("LOCALCOM" )
USE V: "\\serveur33hdd\cabinet" /persistent
;IF (EXIST($Map= 1)
;USE v: $Map /PERSISTENT
;IF @ERROR=0 AND $Debug=1
;MESSAGEBOX ("Lecteur v déjà existant",64,6)
;ENDIF
;ENDIF
CASE 1
MESSAGEBOX ("Prendre contact avec votre administrateur : L'espace de stockage ne peut pas être monté",64,6)
GOTO FIN
:FIN
ENDSELECT