ViSiToR

Silver Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору Sun Ray Цитата: как значение выводится на экран? | Я же в примере вывожу: If FindOctet <> -1 Then WScript.Echo ListArray2(FindOctet) То что выделено красным, и есть нужное значение (значение элемента в массиве). Цитата: Разре результат поиска не RetVal ? | Нет, RetVal это временная переменная, в результате вызова функции ArraySearch (которую кстати сам написал, т.к не нашёл аналогов), возвращается значение (найденный элемент в массиве), и если оно больше или меньше чем -1 (т.е элемент найден, есть совпадение), значит выводим на экран. Цитата: в качестве переменной окружения выдается то что там написано & RetVal & | Ты неверно построил отображение переменной, даже если бы это и была наша (нужная) переменная, то кавычки там не нужны, а если и нужны (чтобы вывести и их на экран), то их нужно удваивать: """" & RetVal & """" Вот как мне кажется то, что тебе нужно: Код: Dim strIP, objWSH, objUserVariables, objSystemVariables Set objWSH = CreateObject("WScript.Shell") Set oWTSCOM = CreateObject("EOLWTSCOM.WTSCOM") StrIP = oWTSCOM.WTSQuerySessionInformation(0, -1, 14) IpArray = Split(StrIP, ".", -1, 1) ListArray1 = Array(12, 1, 5) ListArray2 = Array(11, 13, 56) Octet3 = IpArray(2) FindOctet = ArraySearch(ListArray1, Octet3, 0, 1) If FindOctet <> -1 Then Set objUserVariables = objWSH.Environment("USER") objUserVariables("NUM") = ListArray2(FindOctet) WScript.Echo ListArray2(FindOctet) End If Function ArraySearch(ByRef sArray, StrToFind, Part, Dimention) RetVal = -1 For i = 0 To Ubound(sArray, Dimention) If (Part = 1 And InStr(1, sArray(i), StrToFind) > 0) Or (Part <> 1 And CStr(sArray(i)) = CStr(StrToFind)) Then RetVal = i Exit For End If Next ArraySearch = RetVal End Function |
---------- ViSiToR a.k.a CreatoR CreatoR это не ник, CreatoR это стиль жизни! |
| Всего записей: 3251 | Зарегистр. 01-04-2006 | Отправлено: 05:33 22-11-2007 | Исправлено: ViSiToR, 05:36 22-11-2007 |
|