Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

passer un objet en argument d'une fonction

1 réponse
Avatar
Ziggy
Bonjour,
Je cherche à réduire le nombre de ligne d'un script dont voici un extrait.
Ma question est :
Est il possible de déclarer qu'une seule fois
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\"
& strComputer & "\root\cimv2")
dans le code principal et de faire passer objWMIService en argument dans les
fonctions.

Par avanxce, merci de vos réponses

Thierry





strCurrentComputerName = CurrentComputerName(".")

strCurrentComputerOsVersion = CurrentComputerOsVersion(".")



Function CurrentComputerName(strComputer)

Set objWMIService =
GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer &
"\root\cimv2")

Set colOS = objWMIService.ExecQuery("Select * from
Win32_OperatingSystem")

For Each objOS In colOS

result = objOS.CSName

Next

CurrentComputerName = result

Set objWMIService = Nothing

Set colOS = Nothing

End Function



Function CurrentComputerOsVersion(strComputer)

Set objWMIService =
GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer &
"\root\cimv2")

Set colOS = objWMIService.ExecQuery("Select * from
Win32_OperatingSystem")

For Each objOS in colOS

result = objOS.Caption & "-" & objOS.Version & "-" &
objOS.ServicePackMajorVersion & "." & objOS.ServicePackMinorVersion

Next

CurrentComputerOsVersion = result

Set objWMIService = Nothing

Set colOS = Nothing

End Function

1 réponse

Avatar
Michel Claveau
Bonjour !

La réponse est : oui.

@-salutations

Michel Claveau