Menu
Total

ファイルを分けて作成(wsf)

Main.wsf
(※管理者権限が必要な処理がある場合は、管理者権限で実行)

<PACKAGE>
    <JOB id="Sample1">
        <SCRIPT language="VBScript" src="FileFolderCtrl/FileFolderCtrl.vbs"></SCRIPT>
        <SCRIPT>
            Call subCopyFolder
        </SCRIPT>

        <!-- ### ローカルユーザー作成 ####  -->
        <SCRIPT language="VBScript" src="LocalUserAdd/LocalUserAdd.vbs"></SCRIPT>
        <SCRIPT>
            Call subCreateLocalUser("User1","11111111")
            Call subCreateLocalUser("User2","22222222")
        </SCRIPT>

    </JOB>

</PACKAGE>

FileFolderCtrl.vbs

Option Explicit

'**************************************************
'  Copy Folder
'**************************************************
Function subCopyFolder

	Dim objFSO
	Dim strSrcDir
	Dim strDistDir

	Set objFSO = CreateObject("Scripting.FileSystemObject")

	strSrcDir = objFSO.GetParentFolderName(WScript.ScriptFullName)
	strDistDir = CreateObject("WScript.Shell").SpecialFolders("Desktop")
	objFSO.CopyFolder strSrcDir, strDistDir & "\", True

	Set objFSO = Nothing

  WScript.Echo "Fin."
    
End Function

LocalUserAdd.vbs

Op'Option Explicit

'**************************************************
'  ローカルユーザ作成
'**************************************************
' strUser: 作成するユーザ名
' strPassword: 作成するユーザのパスワード

Sub subCreateLocalUser(strUser, strPassword)

    Dim WshNetwork
    Dim objUser

    Set WshNetwork = CreateObject("Wscript.Network")
    Set objUser = GetObject("WinNT://" & WshNetwork.ComputerName & "").Create("user", strUser)

    objUser.SetPassword strPassword
    objUser.SetInfo
    objUserFlags = objUser.Get("UserFlags")

' パスワード無制限
    objUserFlags = objUserFlags OR &H10000
    objUser.Put "UserFlags", objUserFlags

' アカウント有効期限なし
    objUser.AccountExpirationDate = "01/01/1970"

' アカウント有効
    objUser.AccountDisabled = False
    objUser.SetInfo

    Set objUser = Nothing
    Set WshNetwork = Nothing

End Sub