如何从域(C#代码)中删除计算机,然后添加到工作组?

我的要求是将计算机join Workgroup 。 它在正常情况下运作良好。 但是,如果电脑已经是一个域的一部分,那么我的代码不起作用。

我认为,首先计算机需要从域中删除,然后添加到工作组。 有谁知道如何从域名中删除计算机?

请记住,如果计算机是域的一部分,则运行软件的用户可能无权将其从该域中删除。 这很可能是域管理员特权操作。 如果是这样,那么你的软件也无法做到!

我不确定你的软件是不是在一个域中工作,但它可能是值得关注的。

不完全是一个答案,但太长的评论:大多数管理样本在VB脚本,所以当搜索期望大多数结果要求转换…

链接在一起应该让你写删除代码:

  • 从域中删除计算机(ADSI / VB脚本)
  • WinNT的ADSI对象和链接的IADsContainer :: Delete
  • 如何在Visual C#中访问ADSI对象

代码块:

 // VBScript Set objDC = getobject("WinNT://" & strDomain ) objDC.Delete( "Computer", strComputer 

C#访问ADSI对象:

 DirectoryEntry de = new DirectoryEntry(); de.Path = "WinNT://YOURDOMAIN";