Página 1 de 1

Pegar nome de computadores na rede

Enviado: 10 Fev 2009 00:52
por clodoaldomonteiro
Olá pesoal!

Existe alguma função para pegar o nome de um computador na rede?

A função NetName() pega o nome do computador local, mas como pegar o nome de outro computador na rede?

Re: Pegar nome de computadores na rede

Enviado: 10 Fev 2009 03:13
por Maligno
Como diria Pe. Quevedo: iso nòn éqziste! :)
Pelo menos que seja do meu conhecimento. Em DOS. Em Windows me lembro de ter visto algo parecido certa vez.

Re: Pegar nome de computadores na rede

Enviado: 10 Fev 2009 11:02
por Ademir
Boa tarde !

Uma solução seria no autoexec.nt criar uma variavel chamada set username=TERM1 por exemplo. No programa, basta fazer a seguinte verificação:

if gete("USERNAME")="TERM1"
....
endif

Se quiser identificar o nome da estação, funciona.

Espero ter ajudado...


Sem mais

Ademir.

Re: Pegar nome de computadores na rede

Enviado: 10 Fev 2009 13:50
por Maligno
O pedido do colega, se entendi certo, é pegar de uma estação os nomes das demais estações. Agora, se for necessário saltitar no campo das gambis, cada estação poderia então gravar seu nome num arquivo de rede. Pronto. :)

Re: Pegar nome de computadores na rede

Enviado: 10 Fev 2009 20:23
por janio
O comando nbtstat talves funcione para o que vc precisa. Basta digitar nbtstat -a IpComputadorRede que ele devolve o nome da maquina remota.

Código: Selecionar todos

NBTSTAT

Mostra estatísticas de protocolos e conexões de TCP/IP correntes usando NBT (NetBIOS) sobre TCP/IP.

"nbtstat -a" para listar as máquinas por nome.
"nbtstat -A" para listar as máquinas por IP.
"nbtstat -c" para listar o nome do cache remoto incluindo os endereços IP.
"nbtstat -n" para listar os nomes de NETBIOS Local.
"nbtstat -r" para listar nomes resolvidos por Broadcast e por WINS.
"nbtstat -R" para recarregar a tabela de cache remoto.
"nbtstat -S" para listar a tabela de sessões com os IPs de destino.
"nbtstat -s" para listar tabela de sessões convertendo IP de destino para nomes de Hosts pelo arquivo de Hosts.


Re: Pegar nome de computadores na rede

Enviado: 17 Fev 2009 07:47
por vailton
Observando este tópico agora me veio à cabeça que vc podeia fazer algo assim:

Código: Selecionar todos

c:\Projetos>net view
Servidor               Descrição
--------------------------------------------------------------------------
\\HOME
\\NOTE
Comando concluído com êxito.

c:\Projetos>
Se redirecionar a saida para um arquivo texto, vc poderia usar isto juntamente com o Memoread() para obter a lista de micros disponiveis em sua rede... o código seria algo como:

Código: Selecionar todos

FUNCTION ListMicros()
   LOCAL CRLF   := chr(13)+chr(10)
	LOCAL cBatch := '@echo off' + CRLF +;
	                'net view >> rede.txt'
 	LOCAL aResult:= {}
 	LOCAL Temp,i,s
	
	IF File( 'rede.txt'  )
		FErase( 'rede.txt')
	End
	                
   Memowrit( 'rede.bat', cBatch )
   RUN rede.bat
   
	IF !File( "rede.txt" )
		RETURN aResult
	End
	
	Temp := ListAsArray( Memoread( 'rede.txt' ))
	
	FOR i := 1 TO Len( Temp )
		 s := Temp[i]
		 
		 IF Left( s, 2 ) == '\\'	
		 	 s := Substr( s, 1, At( ' ', s )-1 )
		 	 Add( aResult, s )
		 End
	End
	
	RETURN aResult
Eu fiz de cabeça mas não testei o código acima... mas é uma idéia.
8-|

Re: Pegar nome de computadores na rede

Enviado: 24 Mar 2010 13:58
por Mário Isa
sei q ressuscitar tópicos ñ é 1 boa /

seguindo esta idéia eu consegui o obter o NOME DO GRUPO
com a instrução
nbtstat -n > grupos.txt

alguém sabe como "alterar" o nome do grupo via comandos DOS ?

Mário

Re: Pegar nome de computadores na rede

Enviado: 24 Mar 2010 15:43
por asimoes
Mário,

Não testei, mas esta informação é da microsoft.
Não sei se aplica a sua necessidade.

net localgroup "Backup Operators" "<MemberName>" /add

Você deve incluir as aspas.

Considerações adicionais
* Para executar este procedimento, você deve fornecer credenciais para a conta de Administrador no computador local (caso solicitado) ou deve ser membro do grupo Administradores no computador local.
* Todos os direitos e permissões atribuídos ao grupo são atribuídos a todos os membros desse grupo.
* Limite o número de usuários em um grupo Administradores. Os membros do grupo Administradores em um computador local têm permissões de Controle Total nesse computador.
* Se o computador fizer parte de um domínio, é possível adicionar contas de usuário, de computador e de grupo desse domínio e de domínios confiáveis a um grupo local.

NET GROUP [grupo [/COMMENT:"texto"]] [/DOMAIN]
grupo {/ADD [/COMMENT:"texto"] | /DELETE} [/DOMAIN]
grupo usuário [...] {/ADD | /DELETE} [/DOMAIN]