Fonction join() type incompatible??

Résolu
cs_foxmaster Messages postés 38 Date d'inscription mercredi 9 février 2005 Statut Membre Dernière intervention 23 septembre 2013 - 27 août 2007 à 17:58
cs_foxmaster Messages postés 38 Date d'inscription mercredi 9 février 2005 Statut Membre Dernière intervention 23 septembre 2013 - 21 nov. 2007 à 12:10
Bonjour, voila j'ai fai une applis en vbs
qui d'une session a l'autre plante sur la commande join...
sur ma session utilisateur elle passe
sur une autre session utilisateur
ça m'affiche type incompatible 'join'...

Set ADSysInfo = CreateObject("ADSystemInfo")
Set CurrentUser = GetObject("LDAP://" & ADSysInfo.UserName)
strGroups = join(CurrentUser.MemberOf)
msgbox(strGroups)

je veux donc récupérer les different groupes OU ect.. de l'utilisateur et les afficher,
sur certain profil ce la fonctionne, sur d'autre je suis obligé d'enlever join
le pb c'est qu'en l'enlevant ça ne focntionne plus chez les utilisateur sur lesquels cela fonctionnais :(

quelqu'un aurait une idée? ou une solution pour contrer ça ? 
merci d'avance 

4 réponses

cs_foxmaster Messages postés 38 Date d'inscription mercredi 9 février 2005 Statut Membre Dernière intervention 23 septembre 2013
21 nov. 2007 à 12:10
Bonjour bien que ça remonte un peu j'ai trouvvé cette solution bête et méchante mais qui fonctionne ..

On error resume next
strGroups = CurrentUser.MemberOf
strGroups = join(CurrentUser.MemberOf)

Jérôme
3
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
27 août 2007 à 19:13
 Bonsoir,

Join s'utilise pour un tableau.

Exemple:

Set objSysInfo = CreateObject("ADSystemInfo")
Set CurrentUser = GetObject("LDAP://" & objSysInfo.UserName)

MsgBox objSysInfo.UserName &vbCrLf& _
       CurrentUser.MemberOf &vbCrLf& _
       objSysInfo.ComputerName &vbCrLf& _
       objSysInfo.SiteName &vbCrLf& _
       objSysInfo.DomainShortName &vbCrLf& _
       Len(CurrentUser.MemberOf)

For i=0 To Len(CurrentUser.MemberOf)
    'MsgBox CurrentUser.MemberOf(i)
    var = var & Join(Split(Replace(CurrentUser.MemberOf(i) & ",",",",",|"),"|"))
Next
MsgBox var,,"var"

jean-marc
0
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
27 août 2007 à 20:23
Re,

Un lien qui explique les plantages quand MemberOf n'est pas un tableau.
http://www.forum-microsoft.org/post401255.html

jean-marc
0
Kristof_Koder Messages postés 918 Date d'inscription vendredi 3 août 2007 Statut Membre Dernière intervention 27 octobre 2008 10
27 août 2007 à 23:38
Sans doute un pb de droits d'accès en focntion du profil !!
Ton GetObject sur le LDAP doit te retourner un truc foireux si les utilisateur n'ont pas les privilège suffisant pour requéter l'AD
0
Rejoignez-nous