Ir ao conteúdo

Posts recomendados

Postado

Boa-tarde

 

Gostaria de saber se tem uma .Bat que faça ingressar e remover um PC no Domínio? Más não pra executá-la direto do Servidor, será executada do próprio PC que pretendo colocar no Domínio.

 

Tipo: vai pedir se pretende alterar o nome do PC; "se (SIM) digitar para alterar, se (NÃO) permanecer o mesmo" o nome do Domínio; usuário e senha do Admin; e ao final, se pretende reiniciar o PC agora ou não.

 

Att, Francisco

Postado

Muito bacana esse...!

Se tivesse o arquivo.bat ou o código, se conseguir e puder disponibilizar eu agradeço.

 

Valeu ricardo_br

 

Postado

De diz se ele funciona ou não pois não tenho domínio para testar, se não funcionar posso tentar mudar alguma coisa....

 

@echo off

net session >nul 2>&1 || (powershell start -verb runas '"%~0"' &exit /b)
for /f %%a in ('"prompt $H&for %%b in (1) do rem"') do set "BS=%%a"
mode con cols=80 lines=25
Title Adicionar ^| Remover Computador Dominio

chcp 1252 >nul
:MenuP
for /f "delims=" %%a in ('"wmic computersystem get domain,workgroup,PartofDomain /value"') do for /f "tokens=1,2 delims==" %%b in ("%%~a") do (
                                                                                                                                               IF /i "%%b"=="Domain" set "Dominio=%%c"
                                                                                                                                               IF /i "%%b"=="Workgroup" set "GrupoDeTrabalho=%%c"
                                                                                                                                               IF /i "%%b"=="PartOfDomain" (IF /i "%%c"=="TRUE" (set "TRede=Dominio") else (set "TRede=Grupo de Trabalho"))                                                                                                                                               
                                                                                                                                              )
:: Coloquei como teste para que reconheça como domínio yahoo.com porque não tenho domínio para testar
if /i "%GrupoDeTrabalho%"=="yahoo.com" set "TRede=Dominio"
IF /i "%TRede%"=="Dominio" (set "TRede=%TRede% (%Dominio%)") else (set "TRede=%TRede% (%GrupoDeTrabalho%)")
set Opcao=
cls
echo.
echo  Menu Principal  ^| PC: %Computername% ^| %TRede% 
echo  --------------
echo.
echo  O que gostaria de fazer?
echo.
echo  (A)dicionar ao Dominio
echo.
echo  (R)emover do Dominio
echo.
echo  (S)air
echo  -------------
echo.
set /p "Opcao=%BS% Escolha uma Opção: "
IF /I "%Opcao%"=="a" goto :MAdicionar
IF /I "%Opcao%"=="r" goto :MRemover
IF /i "%Opcao%"=="s" exit
pause

:MAdicionar
set Opcao=
set Usuario=
set Senha=
set NovoNome=
cls
echo.
set /p "Dominio=%BS% Especifique o novo Dominio: "
set /p "Usuario=%BS% Especifique um nome de usuário de Administrador de Dominio: "
set /p "Senha=%BS% Especifique a senha de Administrador de Dominio: "
set /p "Opcao=%BS% Deseja renomear o computador antes (s) (n)? "
IF /i "%Opcao%"=="s" set /p "NovoNome=%BS% Novo Nome: "
IF /i "%Opcao%"=="s" wmic computersystem where name="%ComputerName%" call rename name="%NovoNome%" 1>nul 2>nul
set Opcao=
wmic computersystem where name="%Computername%" call joindomainorWorkgroup name="%Dominio%" UserName="%Usuario%" Password="%Senha%" 1>nu 2>nu
echo.
echo  O computador precisa ser reiniciado para que as alterações tenham efeito!
set /p "Opcao=%BS% Reiniciar agora (s) (n)? "
IF /i "%Opcao%"=="s" shutdown -r -t 20
goto :MenuP

:MRemover
set Opcao=
set NovoNome=
set /p "Opcao=%BS% Deseja remover o computador: %Computername% de %TRede% (s) (n)? "
IF /i not "%Opcao%"=="s" goto :MenuP
set Opcao=
set /p "Opcao=%BS% Deseja renomear o computador antes (s) (n)? "
IF /i "%Opcao%"=="s" set /p "NovoNome=%BS% Novo Nome: "
IF /i "%Opcao%"=="s" wmic computersystem where name="%ComputerName%" call rename name="%NovoNome%" 1>nul 2>nul
wmic computersystem where name="%Computername%" call joindomainorWorkgroup name="Workgroup" 1>nul 2>nul
echo.
set Opcao=
echo  O computador precisa ser reiniciado para que as alterações tenham efeito!
set /p "Opcao=%BS% Reiniciar agora (s) (n)? "
IF /i "%Opcao%"=="s" shutdown -r -t 20
goto :MenuP

 

  • Curtir 2
Postado
19 horas atrás, ricardo_br disse:

De diz se ele funciona ou não pois não tenho domínio para testar, se não funcionar posso tentar mudar alguma coisa....

 

@echo off

net session >nul 2>&1 || (powershell start -verb runas '"%~0"' &exit /b)
for /f %%a in ('"prompt $H&for %%b in (1) do rem"') do set "BS=%%a"
mode con cols=80 lines=25
Title Adicionar ^| Remover Computador Dominio

chcp 1252 >nul
:MenuP
for /f "delims=" %%a in ('"wmic computersystem get domain,workgroup,PartofDomain /value"') do for /f "tokens=1,2 delims==" %%b in ("%%~a") do (
                                                                                                                                               IF /i "%%b"=="Domain" set "Dominio=%%c"
                                                                                                                                               IF /i "%%b"=="Workgroup" set "GrupoDeTrabalho=%%c"
                                                                                                                                               IF /i "%%b"=="PartOfDomain" (IF /i "%%c"=="TRUE" (set "TRede=Dominio") else (set "TRede=Grupo de Trabalho"))                                                                                                                                               
                                                                                                                                              )
:: Coloquei como teste para que reconheça como domínio yahoo.com porque não tenho domínio para testar
if /i "%GrupoDeTrabalho%"=="yahoo.com" set "TRede=Dominio"
IF /i "%TRede%"=="Dominio" (set "TRede=%TRede% (%Dominio%)") else (set "TRede=%TRede% (%GrupoDeTrabalho%)")
set Opcao=
cls
echo.
echo  Menu Principal  ^| PC: %Computername% ^| %TRede% 
echo  --------------
echo.
echo  O que gostaria de fazer?
echo.
echo  (A)dicionar ao Dominio
echo.
echo  (R)emover do Dominio
echo.
echo  (S)air
echo  -------------
echo.
set /p "Opcao=%BS% Escolha uma Opção: "
IF /I "%Opcao%"=="a" goto :MAdicionar
IF /I "%Opcao%"=="r" goto :MRemover
IF /i "%Opcao%"=="s" exit
pause

:MAdicionar
set Opcao=
set Usuario=
set Senha=
set NovoNome=
cls
echo.
set /p "Dominio=%BS% Especifique o novo Dominio: "
set /p "Usuario=%BS% Especifique um nome de usuário de Administrador de Dominio: "
set /p "Senha=%BS% Especifique a senha de Administrador de Dominio: "
set /p "Opcao=%BS% Deseja renomear o computador antes (s) (n)? "
IF /i "%Opcao%"=="s" set /p "NovoNome=%BS% Novo Nome: "
IF /i "%Opcao%"=="s" wmic computersystem where name="%ComputerName%" call rename name="%NovoNome%" 1>nul 2>nul
set Opcao=
wmic computersystem where name="%Computername%" call joindomainorWorkgroup name="%Dominio%" UserName="%Usuario%" Password="%Senha%" 1>nu 2>nu
echo.
echo  O computador precisa ser reiniciado para que as alterações tenham efeito!
set /p "Opcao=%BS% Reiniciar agora (s) (n)? "
IF /i "%Opcao%"=="s" shutdown -r -t 20
goto :MenuP

:MRemover
set Opcao=
set NovoNome=
set /p "Opcao=%BS% Deseja remover o computador: %Computername% de %TRede% (s) (n)? "
IF /i not "%Opcao%"=="s" goto :MenuP
set Opcao=
set /p "Opcao=%BS% Deseja renomear o computador antes (s) (n)? "
IF /i "%Opcao%"=="s" set /p "NovoNome=%BS% Novo Nome: "
IF /i "%Opcao%"=="s" wmic computersystem where name="%ComputerName%" call rename name="%NovoNome%" 1>nul 2>nul
wmic computersystem where name="%Computername%" call joindomainorWorkgroup name="Workgroup" 1>nul 2>nul
echo.
set Opcao=
echo  O computador precisa ser reiniciado para que as alterações tenham efeito!
set /p "Opcao=%BS% Reiniciar agora (s) (n)? "
IF /i "%Opcao%"=="s" shutdown -r -t 20
goto :MenuP

 

Boa-tarde ricardo_br

 

     Logo mais vou testar, se der certo ou houver algum erro eu aviso...! Obrigado !

 

Att,

Francisco

Postado
Em 13/03/2022 às 18:02, ricardo_br disse:

Não sei se já existe mais acredito que de para fazer um. Seria algo assim: (esse não funciona ainda...) pois não tenho domínio para testar...

 

966WcH1.gif

Amigo, isso é um compilador ou o próprio prompt de comando? Ou é um programa compilado de algum compilador?

  • 3 meses depois...
Postado

Tenta colocar um pause depois dessa linha e veja se aparece alguma mensagem de erro

 

wmic computersystem where name="%Computername%" call joindomainorWorkgroup name="Workgroup" 1>nul 2>nul
echo.

 

Postado

Poderia deixar assim:

 

wmic computersystem where name="%Computername%" call joindomainorWorkgroup name="Workgroup"
pause

 

e ver se aparece mensagem de erro.

Repare que removi 1>nul 2>nul da linha.

Postado

Fiz a alteração que você mencionou e me retornou isso:

 

reiniciei o computador e a máquina ainda continua no dominio

1.PNG

Postado

@ojauum Tente com esse código:

 

@echo off

net session >nul 2>&1 || (powershell start -verb runas '"%~0"' &exit /b)
for /f %%a in ('"prompt $H&for %%b in (1) do rem"') do set "BS=%%a"
mode con cols=80 lines=25
Title Adicionar ^| Remover Computador Dominio

chcp 1252 >nul
:MenuP
for /f "delims=" %%a in ('"wmic computersystem get domain,workgroup,PartofDomain /value"') do for /f "tokens=1,2 delims==" %%b in ("%%~a") do (
                                                                                                                                               IF /i "%%b"=="Domain" set "Dominio=%%c"
                                                                                                                                               IF /i "%%b"=="Workgroup" set "GrupoDeTrabalho=%%c"
                                                                                                                                               IF /i "%%b"=="PartOfDomain" (IF /i "%%c"=="TRUE" (set "TRede=Dominio") else (set "TRede=Grupo de Trabalho"))                                                                                                                                               
                                                                                                                                              )
:: Coloquei como teste para que reconheça como domínio yahoo.com porque não tenho domínio para testar
if /i "%GrupoDeTrabalho%"=="yahoo.com" set "TRede=Dominio"
IF /i "%TRede%"=="Dominio" (set "TRede=%TRede% (%Dominio%)") else (set "TRede=%TRede% (%GrupoDeTrabalho%)")
set Opcao=
cls
echo.
echo  Menu Principal  ^| PC: %Computername% ^| %TRede% 
echo  --------------
echo.
echo  O que gostaria de fazer?
echo.
echo  (A)dicionar ao Dominio
echo.
echo  (R)emover do Dominio
echo.
echo  (S)air
echo  -------------
echo.
set /p "Opcao=%BS% Escolha uma Opção: "
IF /I "%Opcao%"=="a" goto :MAdicionar
IF /I "%Opcao%"=="r" goto :MRemover
IF /i "%Opcao%"=="s" exit
pause

:MAdicionar
set Opcao=
set Usuario=
set Senha=
set NovoNome=
cls
echo.
set /p "Dominio=%BS% Especifique o novo Dominio: "
set /p "Usuario=%BS% Especifique um nome de usuário de Administrador de Dominio: "
set /p "Senha=%BS% Especifique a senha de Administrador de Dominio: "
set /p "Opcao=%BS% Deseja renomear o computador antes (s) (n)? "
IF /i "%Opcao%"=="s" set /p "NovoNome=%BS% Novo Nome: "
IF /i "%Opcao%"=="s" wmic computersystem where name="%ComputerName%" call rename name="%NovoNome%" 1>nul 2>nul
set Opcao=
wmic computersystem where name="%Computername%" call joindomainorWorkgroup name="%Dominio%" UserName="%Usuario%" Password="%Senha%" 1>nu 2>nu
echo.
echo  O computador precisa ser reiniciado para que as alterações tenham efeito!
set /p "Opcao=%BS% Reiniciar agora (s) (n)? "
IF /i "%Opcao%"=="s" shutdown -r -t 20
goto :MenuP

:MRemover
set Opcao=
set NovoNome=
set /p "Opcao=%BS% Deseja remover o computador: %Computername% de %TRede% (s) (n)? "
IF /i not "%Opcao%"=="s" goto :MenuP
set Opcao=
set /p "Opcao=%BS% Deseja renomear o computador antes (s) (n)? "
IF /i "%Opcao%"=="s" set /p "NovoNome=%BS% Novo Nome: "
IF /i "%Opcao%"=="s" wmic computersystem where name="%ComputerName%" call rename name="%NovoNome%" 1>nul 2>nul
wmic /interactive:off ComputerSystem Where "Name='%computername%'" Call UnJoinDomainOrWorkgroup FUnjoinOptions=0 1>nul 2>nul
echo.
set Opcao=
echo  O computador precisa ser reiniciado para que as alterações tenham efeito!
set /p "Opcao=%BS% Reiniciar agora (s) (n)? "
IF /i "%Opcao%"=="s" shutdown -r -t 20
goto :MenuP

 

  • Curtir 1
Postado

Dentro do menu MAdicionar poderia mudar essa linha:

 

wmic computersystem where name="%Computername%" call joindomainorWorkgroup name="%Dominio%" UserName="%Usuario%" Password="%Senha%" 1>nu 2>nu

 

para essa e colocar um pause no final, e passar o erro que da?

 

wmic computersystem where name="%Computername%" call joindomainorWorkgroup name="%Dominio%" UserName="%Usuario%" Password="%Senha%"
pause

 

Postado

Pronto, fiz a alteração que você mandou, mas ao invés de inserir o dominio na opção dominio, ele inseriu na opção de baixo: grupo de trabalho.

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...