どうやら私の仕事の進捗は鼻歌の歌い方でわかるようです。
何故かMicrosoft TechNetにはActive Directory のユーザーアカウントの作成方法
しか掲載されていません。
ユーザーの作成はこのサイトに出ていましたが・・・
http://www.whitire.com/vbs/tips0195.html
この方法でユーザーは追加できるのですが、
「ようこそ画面」にもコントロールパネルのユーザーアカウントにも表示されません。
もう一つの注意点として、ログインしないとユーザーフォルダ(Vistaの場合 c:/user/ユーザー名)
は作成されないので、フォルダを作成するコードを追加する必要があります。
「ようこそ画面」とコントロールパネルに表示する方法を探してみたらありました。
http://forums.techarena.in/showthread.php?t=435423
サンプルはXPですがVistaでも動きます。
但しVistaだとUACが有効の場合、ガードされて当然な内容なので、実行エラーが発生します。
管理者として実行する必要があります。
コマンドプロンプトを管理者として起動してスクリプトを実行するのが普通ですが
マンマシンを考えるとスクリプトを起動するEXEを作成して、EXEの名称に"Setup"を含む名前を付けるか、
manifestを書く、というのが良いかと。
そこで、ウィンドウにファイルをドラッグドロップすると該当ファイルを起動するというプログラムをC#で
作成したのですが…
管理者権限を付加して起動するとドラッグドロップができない。MS、なにゆえ・・・
何故かMicrosoft TechNetにはActive Directory のユーザーアカウントの作成方法
しか掲載されていません。
ユーザーの作成はこのサイトに出ていましたが・・・
http://www.whitire.com/vbs/tips0195.html
この方法でユーザーは追加できるのですが、
「ようこそ画面」にもコントロールパネルのユーザーアカウントにも表示されません。
もう一つの注意点として、ログインしないとユーザーフォルダ(Vistaの場合 c:/user/ユーザー名)
は作成されないので、フォルダを作成するコードを追加する必要があります。
「ようこそ画面」とコントロールパネルに表示する方法を探してみたらありました。
http://forums.techarena.in/showthread.php?t=435423
サンプルはXPですがVistaでも動きます。
但しVistaだとUACが有効の場合、ガードされて当然な内容なので、実行エラーが発生します。
管理者として実行する必要があります。
コマンドプロンプトを管理者として起動してスクリプトを実行するのが普通ですが
マンマシンを考えるとスクリプトを起動するEXEを作成して、EXEの名称に"Setup"を含む名前を付けるか、
manifestを書く、というのが良いかと。
そこで、ウィンドウにファイルをドラッグドロップすると該当ファイルを起動するというプログラムをC#で
作成したのですが…
管理者権限を付加して起動するとドラッグドロップができない。MS、なにゆえ・・・
Option Explicit
Dim UserName,PassWord,strComputer
Dim objWshNetwork
Dim colAccounts,objUser
Dim objGroup
UserName="boo"
PassWord="test"
Set objWshNetwork = CreateObject("WScript.Network")
strComputer = objWshNetwork.ComputerName
Set colAccounts = GetObject("WinNT://" & strComputer & "")
colAccounts.Filter = Array("user")
For Each objUser In colAccounts
If UCASE(objUser.Name)=UCASE(UserName) then
MsgBox "この名前は既に使用中です"
'colAccounts.Delete "user",UserName '既存のユーザーを削除したいときはこの行を実行
CloseProc -1
End if
Next
Set objUser = colAccounts.Create("user", UserName)
objUser.SetPassword PassWord
objUser.SetInfo
If Err.Number <> 0 Then
MsgBox "書き込めません"
CloseProc -2
End if
Set objGroup = GetObject("WinNT://" & strComputer & "/Users,group")'通常のユーザとして作成
'管理者権限付 Set objGroup = GetObject("WinNT://" & strComputer & "/Administrators,group")
objGroup.Add ObjUser.ADsPath
CloseProc 0
sub CloseProc(sts)
Set colAccounts=Nothing
Set objWshNetwork=Nothing
Set objUser =Nothing
Set objGroup=Nothing
WScript.Quit(sts)
End Sub