G
Guest
Hi.
First I will explain what i am trying to do. I need to admin a number of
computers over a network that spans several subnets and workgroups. Some of
them are in a domain and some are not. Computers include XP and NT(With WSH
and WMI). In order to do that I have to log on using
IWbemLocator::ConnectServer. As there is no domain available for all, for
connecting I use local administrator accounts (same on all systems).
When creating the connection, The Username has to be preceeded by the name
of the computer it is on. Eg:
sIP = "223.254.250.108"
sName = "Cad8"
sUsername = "myaccount"
sPassword = "mypassword"
Set objLoc = WScript.CreateObject("WbemScripting.SWbemLocator")
Set objWmi = objLoc.ConnectServer(sIP, "root/cimv2", sName & "\" &
sUsername, sPassword)
So far no problems. But. Here I have to rely on my own database of computer
names for a successful connection. Since this is not a reliable way, I need
to find a way to determine the name of the remote computer while i only have
its IP. Otherwise I could use nbtstat, but many of the new XP computers do
not have netBIOS. Is there ANY other way to get the computer names remotely?
Or do I have to write some clumsy script where the target computer notifies
my administrator station when its name is changed?
Thank you in advance,
Alphard
First I will explain what i am trying to do. I need to admin a number of
computers over a network that spans several subnets and workgroups. Some of
them are in a domain and some are not. Computers include XP and NT(With WSH
and WMI). In order to do that I have to log on using
IWbemLocator::ConnectServer. As there is no domain available for all, for
connecting I use local administrator accounts (same on all systems).
When creating the connection, The Username has to be preceeded by the name
of the computer it is on. Eg:
sIP = "223.254.250.108"
sName = "Cad8"
sUsername = "myaccount"
sPassword = "mypassword"
Set objLoc = WScript.CreateObject("WbemScripting.SWbemLocator")
Set objWmi = objLoc.ConnectServer(sIP, "root/cimv2", sName & "\" &
sUsername, sPassword)
So far no problems. But. Here I have to rely on my own database of computer
names for a successful connection. Since this is not a reliable way, I need
to find a way to determine the name of the remote computer while i only have
its IP. Otherwise I could use nbtstat, but many of the new XP computers do
not have netBIOS. Is there ANY other way to get the computer names remotely?
Or do I have to write some clumsy script where the target computer notifies
my administrator station when its name is changed?
Thank you in advance,
Alphard