Ir ao conteúdo
  • Cadastre-se

Bat Bat para Ingressar e Remover PC no Domínio


Posts recomendados

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

Link para o comentário
Compartilhar em outros sites

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 1
Link para o comentário
Compartilhar em outros sites

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

Link para o comentário
Compartilhar em outros sites

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?

Link para o comentário
Compartilhar em outros sites

  • 3 meses depois...

@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
Link para o comentário
Compartilhar em outros sites

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

 

Link para o comentário
Compartilhar em outros sites

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...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!