Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   [решено] Узнать РАБОЧУЮ ГРУППУ (http://forum.oszone.net/showthread.php?t=170684)

TERMINAL 19-03-2010 19:59 1372653

Узнать РАБОЧУЮ ГРУППУ
 
Какой командой возможно узнать имя РАБОЧЕЙ ГРУППЫ ?

madmasles 20-03-2010 04:57 1372930

TERMINAL,
Код:

#include <CompInfo.au3>

Dim $aSystemInfo
_ComputerGetSystem($aSystemInfo)
MsgBox(0, "Рабочая группа", $aSystemInfo[1][13])

Computer Info - Библиотека для получения инфы о компьютере

TERMINAL 21-02-2012 12:18 1863396

madmasles, А другой вариант можешь предложить ещё?

Iska 21-02-2012 12:38 1863420

TERMINAL, тогда сначала скажите, чем не устраивает предложенный вариант.

TERMINAL 21-02-2012 12:41 1863423

Iska, Устраивал пока не началась иногда (когда захочет) выпадать ошибка Variable must be of type "Object", не пойму по какой причине....

Iska 21-02-2012 15:14 1863559

Пробуйте самое простое:
Код:

Local $oWshNetwork = ObjCreate("WScript.Network")
MsgBox(0, "Domain", $oWshNetwork.UserDomain)


TERMINAL 21-02-2012 15:19 1863564

Iska, Выводит имя компьютера...

Iska 21-02-2012 17:19 1863676

TERMINAL, боюсь, я действительно погорячился. Попробую вечером вспомнить.

Iska 21-02-2012 17:51 1863703

TERMINAL, попробуйте ещё так:

Код:

Local $oWinNTSystemInfo = ObjCreate("WinNTSystemInfo")
MsgBox(0, "Domain", $oWinNTSystemInfo.DomainName)


Iska 21-02-2012 19:53 1863789

TERMINAL, добрался я до машины с рабочей группой, посмотрел — в основном так же, через Wbem опрашивают.

Давайте попробуем и мы опять то же самое, только не через библиотеку «CompInfo.au3», а уже напрямую:
Код:

#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)
Next

Exit(0)

Что скажет данный код на проблемных:
Цитата:

Цитата TERMINAL
иногда (когда захочет) выпадать ошибка Variable must be of type "Object", »

машинах?

P.S. Наткнулся у Роба на хорошую обзорную статью по теме и решил добавить сюда: VBScript Scripting Techniques: Retrieving (User and Computer) Domain or Workgroup Names.

TERMINAL 21-02-2012 21:04 1863858

Iska, найду проблемную машинку-отпишусь.... А пока ещё попутный вопрос-возможно ли определить наличие машины в домене или в рабочей группе?

TERMINAL 24-02-2012 11:22 1865590

Iska, ConsoleWrite($oSWbemObjectEx.PartOfDomain)
Это показатель наличие машины в домене с результатом true ?

Iska 24-02-2012 11:32 1865593

Цитата:

Цитата TERMINAL
Это показатель наличие машины в домене с результатом true ? »

Для XP и выше — да: Win32_ComputerSystem class.
Цитата:

PartOfDomain

Data type: boolean
Access type: Read-only

If True, the computer is part of a domain. If the value is NULL, the computer is not in a domain or the status is unknown. If you unjoin the computer from a domain, the value becomes False.

Windows 2000 and Windows NT: This property is not available.


TERMINAL 12-03-2012 13:08 1877599

Iska, Спасибо, вроде на твоём варианте проблема изчезла.

syr3d 04-07-2012 14:08 1945656

Посмотрите ещё здесь.


Время: 16:32.

Время: 16:32.
© OSzone.net 2001-