Alias

Join a Domain Win7 x64

8 posts in this topic

#1 ·  Posted (edited)

Hello all,

I have this script below that worked under Windows XP Pro, but on a Windows 7 x64 it will ONLY join the workgroup and not the domain.  If anyone has an idea what is happening I would really appreciate it.

Thank you.

;**************************************************************************************************************
;****************************************           Join Domain           ****************************************
;**************************************************************************************************************
SplashTextOn("", "Attempting to Join ABC.LOCAL Domain... Please wait one moment...", 600, 44,-1,160, 1, "Arial", 14)
Sleep(5000)

Global Const $JOIN_DOMAIN  = 1
Global Const $ACCT_CREATE = 1


$strAdminAccount = "adminaccount" 
$strAdminPass = "adminpass"

$strComputer = "."
$strDomainName = "abc.local"

$objWMIService = ObjGet("winmgmts:" & "{impersonationLevel=impersonate}!\\" & $strComputer & "\root\cimv2")
$colCompSystems = $objWMIService.ExecQuery("SELECT * FROM Win32_ComputerSystem")

For $objCompSystem In $colCompSystems

    $intJOIN_DOMAIN = $objCompSystem.JoinDomainOrWorkgroup($strDomainName, $strAdminPass, $strDomainName & '\' & $strAdminAccount, '', $JOIN_DOMAIN + $ACCT_CREATE)
  
    If $intJOIN_DOMAIN = 0 Then
       SplashTextOn("", "Joined computer to " & $strDomainName & " domain... - " & $intJOIN_DOMAIN, 600, 44,-1,160, 1, "Arial", 14)
       Sleep(5000)
   Else
       MsgBox(0, @ScriptName, "Unable to join computer to " & $strDomainName & " domain. - " & $intJOIN_DOMAIN)
       Sleep(5000)
   EndIf

Next

 

Edited by Alias

Share this post


Link to post
Share on other sites



Hi, @Alias, welcome to the forum. Have you tried just using the Active Directory UDF and the _AD_JoinDomain function? Might ease your AD frustrations.

 


√-1 2^3 ∑ π, and it was delicious!

Share this post


Link to post
Share on other sites

We have removed a few bugs in the latest version of the AD UDF so it should work as described in the example script.


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2017-04-18 - Version 1.4.8.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2017-02-27 - Version 1.3.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2015-04-01 - Version 0.4.0.0) - Download - General Help & Support - Example Scripts
Excel - Example Scripts - Wiki
Word - Wiki
PowerPoint (2015-06-06 - Version 0.0.5.0) - Download - General Help & Support

Tutorials:
ADO - Wiki

 

Share this post


Link to post
Share on other sites

#4 ·  Posted (edited)

Before I found Waters UDF, I used something like this for Win7 32 and 64 bit joins...

 

$sDomain = "MyDomain"
$SvcPassword = "MyPassword"
$SvcUsername = "MyDomainUserName"
$JOIN_DOMAIN = 1
$ACCT_CREATE = 2

$objWMIService = ObjGet("winmgmts:" & "{impersonationLevel=impersonate}!\\" & @Computername & "\root\cimv2")
        $colCompSystems = $objWMIService.ExecQuery("SELECT * FROM Win32_ComputerSystem")
        For $objCompSystem In $colCompSystems
            $intJoinDomain = $objCompSystem.JoinDomainOrWorkgroup($sDomain, $SvcPassword, $sDomain & '\' & $SvcUsername, '', $JOIN_DOMAIN + $ACCT_CREATE)
        Next

 

Now for just about all AD stuff, I uses Waters UDF.

Edited by Kovacic

C0d3 is P0etry( ͡° ͜ʖ ͡°)

Share this post


Link to post
Share on other sites

I just sysprep Windows 7 machines before imaging them so I don't run into these situations.


If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.
Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag Gude
How to ask questions the smart way!

I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from.

Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays.  -  ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script.  -  Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label.  -  _FileGetProperty - Retrieve the properties of a file  -  SciTE Toolbar - A toolbar demo for use with the SciTE editor  -  GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI.  -   Latin Square password generator

Share this post


Link to post
Share on other sites

I just sysprep Windows 7 machines before imaging them so I don't run into these situations.

Sysprep runs only if the computer is a member of a workgroup, not a domain. If the computer is joined to a domain, Sysprep removes the computer from the domain.


C0d3 is P0etry( ͡° ͜ʖ ͡°)

Share this post


Link to post
Share on other sites

First I've heard of this, I haven't had any issues using Sysprep and joining them to the domain. Getting the computer to prompt for a name before joining was the hard part.


If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.
Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag Gude
How to ask questions the smart way!

I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from.

Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays.  -  ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script.  -  Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label.  -  _FileGetProperty - Retrieve the properties of a file  -  SciTE Toolbar - A toolbar demo for use with the SciTE editor  -  GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI.  -   Latin Square password generator

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now