:: ConfigPCName~Workgroup.cmd - Créer par Tlem :: Ce Batch qui permet de configurer automatiquement le nom et le groupe de travail du PC. :: Testé sous Windows 7, 8.x et 10 :: :: Version 1.1 du 15-11-2018 :: - Modification de la prise en compte des paramètres (Utilise le nom du batch). :: - Remplacement de l'utilisation de Powershell par WMI. :: - Ajout du redémarrage en fin de batch. :: - Améliorations cosmétique. :: :: Version 1.0 du 20-02-2016 :: - Première version (utilise les paramètres a l'intérieur du batch). :: :: :: UTILISATION : :: Renommez le batch en utilisant le nom du PC et optionnellement le groupe de :: travail (Workgroup par défaut) séparé par le symbole "~". :: :: EXEMPLES : :: Serveur.cmd <- Le PC sera nommé Serveur et le groupe de travail sera Workgroup :: :: Serveur~CABINET.cmd <- Le PC sera nommé Serveur et le groupe de travail sera CABINET :: @Echo Off & Cls Set Version=1.1 :: Pour éviter les problèmes de chemins SET PATH=%PATH%;%WINDIR%\System32;%WINDIR%\System32\wbem :: Ce place dans le dossier du batch. Si lancé à partir du réseau, crée un lecteur virtuel. Pushd "%~dp0" ::======================================================= :: RECUPERATION DU NOM ET DU GROUPE DE TRAVAIL ::======================================================= :: Lecture et décomposition du nom du batch. For /F "Tokens=1,2,3* Delims=~" %%a In ("%~n0") Do ( Set Newcomputername=%%a Set NewWorkgroup=%%b Set Var=%%c ) ::======================================================= If "%Var%" NEQ "" Goto :ParamError If "%Newcomputername%" EQU "" Goto :ParamError If "%NewWorkgroup%" EQU "" Set NewWorkgroup=WORKGROUP :: Demande d'élévation des droits. Net.exe session 1>NUL 2>NUL || (Powershell start-process """%~dpnx0""" -verb RunAs & Exit /b 1) Set PowerShellExe="%WINDIR%\system32\WindowsPowerShell\v1.0\powershell.exe" If Not Exist %PowerShellExe% Goto :Erreur Echo R‚cup‚ration du nom et du groupe de travail actuel, veuillez patienter. Echo. ::For /F "Tokens=1*" %%a in ('SYSTEMINFO ^| FINDSTR /B /C:"Domaine:"') do Set ActualWorkgroup=%%b For /f "Usebackq Skip=1 Tokens=*" %%a In (`wmic.exe computersystem get workgroup ^| Findstr /r /v "^$" ^| Findstr /r /v "^$"`) Do @Set ActualWorkgroup=%%a Cls Echo ConfigPCName~Workgroup.cmd v%version% Echo. Echo. Echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» Echo º ParamŠtres actuels º Echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Echo Nom de l'ordinateur : %computername% Echo Groupe de travail : %ActualWorkgroup% Echo. echo. Echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» Echo º ParamŠtres … appliquer º Echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Echo Nom de l'ordinateur : %Newcomputername% Echo Groupe de travail : %NewWorkgroup% Echo. Echo. Echo. :Choix Set /p Go="Veuillez confirmer l'application des paramŠtres ci-dessus : o/n (Oui par d‚faut)" If /I "%Go%"=="" Goto :Go If /I "%Go%"=="o" Goto :Go If /I "%Go%"=="n" Exit Goto Choix :Go Echo. Echo Actualisation du nom de l'ordinateur (%Newcomputername%) : ::%PowerShellExe% -Command Rename-Computer -NewName "%Newcomputername%" wmic.exe COMPUTERSYSTEM WHERE Name="%computername%" CALL Rename Name="%Newcomputername%" Password=null UserName=null>NUL If errorlevel 1 Goto :Erreur If errorlevel 0 Echo Ok Echo. Echo Actualisation du groupe de travail (%NewWorkgroup%) : ::%PowerShellExe% -Command add-computer -workgroupname %NewWorkgroup% wmic.exe COMPUTERSYSTEM WHERE Name="%computername%" CALL JoinDomainOrWorkgroup FJoinOptions=0 Name="%NewWorkgroup%" UserName=null Password=null>NUL If errorlevel 1 Goto :Erreur If errorlevel 0 Echo Ok Color 0A Echo. Echo Vous devez red‚marrer l'ordinateur pour appliquer les paramŠtres. Goto :Fin :ParamError @Echo  Color 0C Echo. Echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» Echo º ERREUR º Echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Echo. Echo. Echo Nom = %Newcomputername% Echo Workgroup = %NewWorkgroup% Echo. Echo Le nom de l'ordinateur ne dois pas ˆtre vide et le caractŠre ~ doit ˆtre Echo utilis‚ qu'une seule fois pour s‚parer le nom du PC et le groupe de travail. Echo Si le groupe de travail n'est pas indiqu‚, WORKGROUP sera utilis‚ par d‚faut. Echo. Echo Voici quelques exemples d'utilisation : Echo. Echo NomPC.cmd Echo NomPC~Workgroup.cmd Echo NomPC-001_ZoneX.cmd Echo NomPC-001_ZoneX~Workgroup.cmd Echo. Goto :Fin :Erreur @Echo  Color 0C Echo. Echo. Echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» Echo º ERREUR º Echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Echo. Echo. Echo. Echo Impossible d'appliquer les paramŠtres. Echo Veuillez effectuer les modifications manuellement. Goto :Fin :Fin Echo. Echo Appuyez sur une touche pour red‚marrer Pause>NUL Shutdown -R -t 0 Exit