I'm trying to look up the OU a user resides in based on the username that is in the array. I'm using the AD.au3 udf for the lookup in AD, I may be doing something wrong with the assignment of the user name. When I run the script I get the following error:========================================================
COM Error Encountered in testcsv2.0.au3
AD UDF version = 1.3.0
@AutoItVersion = 3.3.8.1
@AutoItX64 = 0
@Compiled = 0
@OSArch = X64
@OSVersion = WIN_7
Scriptline = 540
NumberHex = 000000A9
Number = 169
WinDescription = Variable must be of type 'Object'.
Description =
Source =
HelpFile =
HelpContext = 544040308
LastDllError = 0
========================================================
Looking for some guidance.
COM Error Encountered in testcsv2.0.au3
AD UDF version = 1.3.0
@AutoItVersion = 3.3.8.1
@AutoItX64 = 0
@Compiled = 0
@OSArch = X64
@OSVersion = WIN_7
Scriptline = 540
NumberHex = 000000A9
Number = 169
WinDescription = Variable must be of type 'Object'.
Description =
Source =
HelpFile =
HelpContext = 544040308
LastDllError = 0
========================================================
Looking for some guidance.
[ autoit ]
#include <array.au3> #include <AD.au3> Opt("MustDeclareVars", 1) Dim $sCSV = FileRead("C:\test.csv") Local $arr = _CsvToArray2D($sCSV) Local $n Local $row = UBound($arr) ;Converts CSV to a 2D array. Func _CsvToArray2D($sCSV) Local $aTmp = StringRegExp($sCSV & @CR, '(\V*)\v{1,2}', 3) Local $NumCols[UBound($aTmp)] For $x = 0 To UBound($aTmp) - 1 StringReplace($aTmp[$x], ",", ",") $NumCols[$x] = @extended + 1 Next Local $Max = _ArrayMax($NumCols, 1) Dim $aArr[UBound($aTmp)][$Max] For $i = 0 To UBound($aArr, 1) - 1 Local $aTemp = StringSplit($aTmp[$i], ",") For $j = 0 To $aTemp[0] - 1 $aArr[$i][$j] = $aTemp[$j + 1] Next Next Return $aArr EndFunc ;Search AD for the user OU While $n < $row Local $Group, $iAD_Security, $sAD_UserIdParam, $sAD_PasswordParam, $sAD_User, $device $device = $arr[$n][0] $sAD_User = $arr [$n][1] _AD_Open($sAD_UserIdParam = "", $sAD_PasswordParam = "", $iAD_Security = 1) $Group = _AD_GetUserPrimaryGroup($sAD_User) _AD_Close() $n = $n + 1 WEnd