Как (максимально просто) узнать имя РАБОЧЕЙ ГРУППЫ? С именем компа — способов 6 нашёл; про имя группы... чуть поменьше, и ни один не работает.
Например, такой кусочек кода:
На этом кусочке совершенно не настаиваю. Забавно, что по ссылке с этим кодом, все активно благодарят автора — а у меня это не работает. Ругается на последнюю строчку. Ай нид хелп, плиз.
Есть и такой код (http://forum.oszone.net/thread-170684.html):
, но вот файла CompInfo.au3 у меня нет. Поиски выводят на некий файл с требуемой версией AutoIt: 3.3.0.0. Что-то страшновато (напрасно?) вводить его в AutoIt с Version: 3.3.10.2; да и, прямо скажу, не хотелось бы "довешивать" чего-то такое, что не предустановлено в релизе: проблемами портирования чревато, — а зачем нам лишние неприятности? ;)
К тому же, файлик, няп, 2007-го года: с тех пор ну просто НЕ МОГЛО не появиться чего-то более "кошерного".
--------------------
Готово!
Сам справился. Почти, спасибо Iska (по той же ссылке)!
Тему -пока- не закрываю — авось, кто-нть посмеётся и покажет однострочную команду, что-то типа @WORKGROUP_INDICATE.
Например, такой кусочек кода:
Код:
#include <Array.au3> ;only for _ArrayDisplay()
$avNetworkConnections = _GetNetwork_Connections()
_ArrayDisplay($avNetworkConnections)
Func _GetNetwork_Connections()
Local Const $NETWORK_CONNECTIONS = 49
Local $objShell = ObjCreate("Shell.Application")
Local $objFolder = $objShell.Namespace($NETWORK_CONNECTIONS)
Local $objFolderItem = $objFolder.Self
Local $aRetArr[2] = [1, $objFolderItem.Path]
Local $ColItems = $objFolder.Items
Local $iUbound = 0
For $objItem In $ColItems
$iUbound = UBound($aRetArr)
ReDim $aRetArr[$iUbound+1]
$aRetArr[$iUbound] = $objItem.Name
Next
$aRetArr[0] =$iUbound
Return $
На этом кусочке совершенно не настаиваю. Забавно, что по ссылке с этим кодом, все активно благодарят автора — а у меня это не работает. Ругается на последнюю строчку. Ай нид хелп, плиз.
Есть и такой код (http://forum.oszone.net/thread-170684.html):
Код:
#include <CompInfo.au3>
Dim $aSystemInfo
_ComputerGetSystem($aSystemInfo)
MsgBox(0, "Рабочая группа", $aSystemInfo[1][13])
, но вот файла CompInfo.au3 у меня нет. Поиски выводят на некий файл с требуемой версией AutoIt: 3.3.0.0. Что-то страшновато (напрасно?) вводить его в AutoIt с Version: 3.3.10.2; да и, прямо скажу, не хотелось бы "довешивать" чего-то такое, что не предустановлено в релизе: проблемами портирования чревато, — а зачем нам лишние неприятности? ;)
К тому же, файлик, няп, 2007-го года: с тех пор ну просто НЕ МОГЛО не появиться чего-то более "кошерного".
--------------------
Готово!
Код:
#Include <Misc.au3>
AutoItSetOption("MustDeclareVars", 1)
Local $oSWbemLocator = ObjCreate("WbemScripting.SWbemLocator")
Local $oSWbemObjectEx
For $oSWbemObjectEx In $oSWbemLocator.ConnectServer(".", "root\cimv2").ExecQuery( "Select * from Win32_ComputerSystem")
; ConsoleWrite(_Iif($oSWbemObjectEx.PartOfDomain, "Computer Domain: ", "Workgroup: ") & $oSWbemObjectEx.Domain & @CRLF)
MsgBox(0, "" ,_Iif($oSWbemObjectEx.PartOfDomain, "Computer Domain: ", "Workgroup: ") & $oSWbemObjectEx.Domain & @CRLF)
Next
Exit(0)
Сам справился. Почти, спасибо Iska (по той же ссылке)!
Тему -пока- не закрываю — авось, кто-нть посмеётся и покажет однострочную команду, что-то типа @WORKGROUP_INDICATE.