一、问题:

1、在加域的时候往往需要打开我的电脑,点开修改计算机名,让后加域,输入账号密码;步骤流程繁琐比较多;
2、总之就是不想一步一步加域;

二、解决思路:

当然是powershell,首先要完成

1、加域的命令部分;

2、然后在套个GUI壳;

3、封装成exe;

先看一下成品样式:

三、解决步骤:

3.1 加域的命令部分


#设置变量,获取所在域
$domain = "hello.com"#设置密码
$password = "12345" | ConvertTo-SecureString -asPlainText -Force#设置加域的用户名(ad.pc该账号为配置好的加域的管理员账号)
$username = "hello.com\ad.pc"#调用加域的账号密码凭据
$credential = New-Object System.Management.Automation.PSCredential($username, $password)#修改计算机名并加域,注意变量$NewComputerName是后面GUI界面要输入的文本,当然也可以用脚本交互来做,这样每次都要运行powershell脚本。
Add-Computer -DomainName $domain -computername $env:computername -NewName $NewComputerName -Credential $credential

3.2 套个GUI壳

add-Type -AssemblyName System.Windows.Forms
add-Type -AssemblyName System.Drawing$PowerShellForms = New-Object system.Windows.Forms.Form
$PowerShellForms.Text = "AD Management"
$PowerShellForms.Size = New-Object System.Drawing.Size(300, 300)
$PowerShellForms.StartPosition = "CenterScreen"
$PowerShellForms.SizeGripStyle = "Hide"#创建确定按钮
$OKButton = New-Object System.Windows.Forms.Button
$OKButton.Location = New-Object System.Drawing.Point(60, 200)
$OKButton.Size = New-Object System.Drawing.Size(75, 23)
$OKButton.Text = "确定"
$OKButton.DialogResult = [System.Windows.Forms.DialogResult]::OK
$PowerShellForms.AcceptButton = $OKButton
$PowerShellForms.Controls.Add($OKButton)#创建取消按钮
$CancelButton = New-Object System.Windows.Forms.Button
$CancelButton.Location = New-Object System.Drawing.Point(150, 200)
$CancelButton.Size = New-Object System.Drawing.Size(75, 23)
$CancelButton.Text = "取消"
$CancelButton.DialogResult = [System.Windows.Forms.DialogResult]::Cancel
$PowerShellForms.CancelButton = $CancelButton
$PowerShellForms.Controls.Add($CancelButton)#创建label,嵌入文字
$Labels9 = New-Object System.Windows.Forms.Label
$Labels9.Location = New-Object System.Drawing.Point(10, 30)
$Labels9.Size = New-Object System.Drawing.Size(50, 20)
$Labels9.Text = "加入hello.com域:"
$Labels9.AutoSize = $True
$PowerShellForms.Controls.Add($Labels9)$Labels1 = New-Object System.Windows.Forms.Label
$Labels1.Location = New-Object System.Drawing.Point(10, 80)
$Labels1.Size = New-Object System.Drawing.Size(80, 20)
$Labels1.Text = "计算机名(大写):"
$Labels1.AutoSize = $True
$PowerShellForms.Controls.Add($Labels1)#创建textBox
$TextBox1 = New-Object System.Windows.Forms.TextBox
$TextBox1.Location = New-Object System.Drawing.Point(120, 76)
$TextBox1.Size = New-Object System.Drawing.Size(150, 20)
$PowerShellForms.Controls.Add($TextBox1)$objCheckBox3 = New-Object System.Windows.Forms.CheckBox
$objCheckBox3.Location = New-Object System.Drawing.Size(120, 110)
$objCheckBox3.Size = New-Object System.Drawing.Size(150, 20)
$PowerShellForms.Controls.Add($objCheckBox3)
$objCheckBox3.Text = "加域后自动重启计算机"$PowerShellForms.Topmost = $True$result = $PowerShellForms.ShowDialog()#执行选择
if ($result -eq [System.Windows.Forms.DialogResult]::OK)
{判断,如果选择了重启计算机
if ($objCheckBox3.Checked -eq $true){$user01 = $textBox1.Text$NewComputerName = "$user01"#设置变量,获取所在域$domain = "hello.com"#设置密码$password = "12345" | ConvertTo-SecureString -asPlainText -Force#设置加域的用户名(ad.pc该账号为配置好的加域的管理员账号)$username = "hello.com\ad.pc"#调用加域的账号密码凭据$credential = New-Object System.Management.Automation.PSCredential($username, $password)#修改计算机名并加域,注意变量$NewComputerName是后面GUI界面要输入的文本,当然也可以用脚本交互来做,这样每次都要运行powershell脚本。Add-Computer -DomainName $domain -computername $env:computername -NewName $NewComputerName -Credential $credential#10S后重启计算机Start-Sleep -Seconds 10; Restart-Computer -Force}#如果没选,加域后手动重启else{$user01 = $textBox1.Text$NewComputerName = "$user01"#设置变量,获取所在域$domain = "hello.com"#设置密码$password = "12345" | ConvertTo-SecureString -asPlainText -Force#设置加域的用户名(ad.pc该账号为配置好的加域的管理员账号)$username = "hello.com\ad.pc"#调用加域的账号密码凭据$credential = New-Object System.Management.Automation.PSCredential($username, $password)#修改计算机名并加域,注意变量$NewComputerName是后面GUI界面要输入的文本,当然也可以用脚本交互来做,这样每次都要运行powershell脚本。Add-Computer -DomainName $domain -computername $env:computername -NewName $NewComputerName -Credential $credential}
}

3.3 封装为exe

一句话:powershell studios

Winserver AD管理Powershell——GUI 计算机加入域相关推荐

  1. 给计算机新用户授权,AD管理之授权用户将计算机加入域的权限

    对于我们这个行业,经常会遇到AD管理的很多问题,其中部分是企业里IT管理常见的需求,部分是鲜见的奇怪需求.今天我来讲一个我们企业目前遇到的一个问题: 在AD里授权给Helpdesk人员将客户端计算机加 ...

  2. AD域外计算机共享域内打印机出现“无法访问,没有权限访问网络资源,用户不得从此工作站登录网络”

    环景: win2019AD域 win10专业版 HP132打印机 问题描述: 之前是可以访问 AD域外计算机共享域内一台打印机出现"无法访问,没有权限访问网络资源,用户不得从此工作站登录网络 ...

  3. 域控禁用计算机网络,AD之:计算机加域、禁用、退域

    默认情况下,普通域用户可以向域中添加10个计算机,域管理员没有这个限制,当然这种情况是不允许的因此我们可以通过组策略对其进行控制! 一般域内建立的用户默认都在DomainUsers组中,改组中的用户可 ...

  4. practice:如何使用2008R2上的AD管理中心

    (一).安装 Active Directory 管理中心 引用位置: http://technet.microsoft.com/zh-cn/library/dd560652(WS.10).aspx ( ...

  5. 将客户端计算机加入域前建立计算机账户的必要性

    虽然几乎每天都在做将客户端加入到域的工作,但是最近突然对这个过程产生了疑惑并且=被困扰了几日.我们知道,用户想要登录到域,所用计算机(指xp/Win7)需要在该域或有信任关系的其它域中有一个计算机帐户 ...

  6. 域外计算机访问域内共享,域外用户如何拥有让其他电脑加域或退域的权限

    域外用户如何拥有让其他电脑加域或退域的权限 佚名  ChinaUnix博客  2011-07-27 域的真正含义指的是服务器控制网络上的计算机能否加入的计算机组合,这样在域内的计算机就可以共享资源,也 ...

  7. 域成员计算机加入域问题

    域成员计算机加入域(张东辉) 域成员计算机 (1)将计算机加入到域 首先将客户机TCP/IP配置中所配的DNS服务器,指向DC所用的DNS服务器.然后我的电脑/右键/属性/网络标识/属性/隶属于,选择 ...

  8. 【Windows Server 2019】活动目录 (Active Directory) ——将计算机加入域和脱离域

    目录 8. 将计算机加入域和脱离域 8.1 将客户机加入到fjnu.local域中 8.2 验证客户机加入到域后的信息 8.3 使用域账户用户在客户机上登录 8.4 使用本地账户用户在计算机上登录 8 ...

  9. 计算机入域时域控用到的端口,【ADDC】域控需要开放的端口

    [ADDC]域控需要开放的端口 6年前 (2015-06-03)    作者:Jiaozn    分类:Windows    阅读次数:3486 评论(0) 在域环境里面,如果两个DC之间启动防火墙, ...

  10. xp计算机加域找不到网络路径,手把手为您win10系统计算机加域提示错误“找不到网络路径”的方法...

    今天小编分享一下win10系统计算机加域提示错误"找不到网络路径问题的处理方法,在操作win10电脑的过程中常常不知道怎么去解决win10系统计算机加域提示错误"找不到网络路径的问 ...

最新文章

  1. android 相片裁剪空间,科学网—根据需要的空间范围对目标图层进行空间裁剪 - 孙露的博文...
  2. 3、将对象存储到zookeeper中,然后再拿下来还原
  3. 把button伪装成超链接
  4. 《Effective C#》某些地方实在是对不起Effective这个词(I)
  5. Java JDK11快速下载地址
  6. 【Android.mk】android编译系统makefile文件Android.mk的写法
  7. 阿里云文件存储的高性能架构演进之路
  8. .net core image怎么保存_轻量级Vue图片上传插件——Vue-core-image-Upload
  9. Java SSH远程执行Shell脚本实现
  10. 2013年全国各大著名的IT公司薪资待遇大揭密 给出入职场的民工一点建议
  11. 看不见的,就是不存在么?《平面国》读后感
  12. 收益率的标准差怎么算MATLAB,什么是收益的标准差怎样计算呢
  13. linux怎么关闭超线程模式,Linux动态启用/禁用超线程技术的方法详解
  14. spa项目开发之vue+elementUi实现tab页
  15. 18年ACM赛后总结
  16. 滑块逃脱_逃脱测试的丛林:从夹具到断言的捷径
  17. linux脚本中的gt,shell中’-gt’与’’的区别
  18. 多方安全计算(MPC)发展脉络及应用实践
  19. 什么是Subject
  20. 嵌入式中的BSP---BSP到底是什么?

热门文章

  1. 2020 字节跳动,网易,华为(1),阿里P7级别面试经验总结
  2. 阿里云服务器价格表,阿里云服务器最新收费标准大全
  3. yoga book android rom,【发帖王】YOGA BOOK Android版玩机技巧
  4. 外圣内王适用于互联网行业吗?
  5. js中的设计模式之单例模式
  6. 使用Tensorflow2.0实现roi-Align和FPN
  7. 适配 iPhoneXs iPhoneXs Max iPhoneXr 界面
  8. 虚幻5会对行业产生什么重大变化影响?
  9. Java利用PdfBox实现Pdf转图片
  10. Win10加Ubuntu20.04双系统安装教程