ネットワーク上のWindowsXPでのローカルユーザー削除スクリプト作成方法

このQ&Aのポイント
  • ネットワーク上のWindowsXPでVBScriptを用いて任意の管理者権限付きユーザーを作成する方法について教えてください。
  • 作成したユーザーを削除するためのVBScriptスクリプトの記述方法について教えてください。
  • ネットワーク上のPCの名前と任意のユーザー名を指定したVBScriptでユーザー削除する方法について教えてください。
回答を見る
  • ベストアンサー

ローカルユーザー削除スクリプト作成(VBScript)

ローカルユーザー削除スクリプト作成(VBScript) 先日、ネットワーク上のWindowsXPに、任意の管理者権限付きユーザーをVBScriptを用いて作成しました。(スクリプトは自身で作成しました) 本日、このユーザーは必要なくなったので、削除するスクリプトを作成しようとしましたが、うまく動かないのでご教授いただければ幸いです。 スクリプトを下記に記します。 スクリプトのユーザー作成部分です。うまく動いてくれました。 Set objComputer = GetObject("WinNT://" & strComputer & ",Computer") Set objNewUser = objComputer.Create("user", strUserName ) Set objAdminGroup = GetObject("WinNT://" & strComputer & "/Administrators,group") *strComputerは、ネットワーク上のPC名。strUserNameは、任意のユーザー名です。 スクリプトのユーザー削除部分です。 Set objComputer = GetObject("WinNT://" & strComputer & ",Computer") Set objNewUser = objComputer.Delete("user", strUserName ) *strComputerは、ネットワーク上のPC名。strUserNameは、任意のユーザー名です。 ユーザー作成の情報は、数多く見つけたのですが、削除の方法は見つけることは出来なかったです。ですので、objComputer.Delete("user", strUserName )この辺は自身の推測で記述しました。 作成がこの記述なら、削除はこんな感じかなって思いまして…。 情報でもよろしいので、ご教授お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • 0909union
  • ベストアンサー率39% (325/818)
回答No.1

>objComputer.Delete("user", strUserName ) ゲットしたプロパイダーによる(モニカでもちょこっと違う)。近いのが http://www.microsoft.com/japan/technet/scriptcenter/resources/qanda/jun07/hey0618.mspx このサイトにたくさんサンプルがあるので根気良く探してみましょう。”WinNT プロバイダ”での取得なので、リファレンスサイトもそこを見ないと、メソッドとか出ていない。MSDNのテクニカルサイトのWMIのリファレンスで確認してください。 でもまあ >net user /delete が一番簡単なような気がする。

その他の回答 (1)

  • 0909union
  • ベストアンサー率39% (325/818)
回答No.2

http://msdn.microsoft.com/en-us/library/aa705979(v=VS.85).aspx No1の追加です。使われているメソッドのリファレンスです。

関連するQ&A

  • vbscriptをHTMLに埋めるとエラーが出る

    下記のvbscriptをHTMLに埋める手段を考えています。 <SCRIPT LANGUAGE="VBScript">で入れると、 ActiveX コンポーネントを作成できません。:GetObject とエラーが出てしまいます。回避方法をご教授ください。 Dim usr,group,ComputerName,UserName,strADsPath ComputerName = "server" 'コンピュータ名 UserName = "testuser" 'ユーザ名 strADsPath = "WinNT://" & ComputerName & "/" & UserName & ",user" set usr = GetObject(strADsPath) For Each grp In usr.Groups MsgBox "グループ名: " & grp.Name Next

  • ログオンスクリプトによるネットワークドライブマウントができない

    すみません。教えてください。 初心者ながら、WindowsServer2003へのログオンスクリプトを 作成してますが、ネットワークドライブにマウントできません。 コマンドは、環境変数を使った下記の通りの記述です。 set server1=コンピュータ名(又はIPアドレス)\共有名 net set O: /delete net use O: %server1%\共有名 ※Oドライブは、空きドライブです。 ※コンピュータ名は、WindowsServer2003のコンピュータ名です。 ※共有名は、Winサーバ上のフォルダ共有名です。 ※ログオンスクリプトは、WinServerzyo ログオンスクリプトは、Winサーバ上の下記の通りです。 ・各ユーザーごとの「ログオンスクリプト」へlogon.batと記述 ・C:の\sysbol\scriptへlogon.batを保存 net useは、コンピュータ名でもIPアドレスしていでも ネットワークマウント可能と思いますが、上手くいっておりません。 記述がいけないのか、または、別の原因あるのか ご教授頂けますでしょうか。

  • VBScript

    下記のようなプログラムを書いていますが GetObjectのところでエラーになります。 文法に誤りがあるようですが、解決方法がわかりませんので ご存じの方、ご教示お願いいたします。 <!DOCTYPE html> <html> <head> <script LANGUAGE="VBScript"> Function Entry() Dim strServerName Dim strUserName Dim strADSIPath Dim strPassword Dim oUser strServerName="XXX" strUserName=window.document.getElementById("name").value strPassword=window.document.getElementById("pass").value strADSIPath = "WinNT://" & strServerName & "/" & strUserName oUser = GetObject(strADSIPath) oUser.Setpassword strPassword oUser.SetInfo oUser = Nothing End Function </script> </head> <body> <table> <tr><th>login name</th><td><input type="text" size="10" id="name"></td></tr> <tr><th>password</th><td><input type="text" size="10" id="pass"></td></tr> </table> <input type="button" value="entry" onclick="Entry()"> </body> </html>

  • ユーザー作成/削除をするシェルスクリプト

    とある理由によってWeb上からLinuxユーザーやMySQLデータベースなどを追加できるようにしたいのですが、 PHPなどの言語からシェルスクリプトを呼び出す方法は知っています。 ユーザー作成をするシェルスクリプトは、 普通にuseraddや、userdelでよろしいのでしょうか? あとuseraddでユーザー名を入力し、パスワードを聞かれずに 一発でユーザーが作成できるオプションがあれば教えてください。 userdelやcreate databaseも同じです。

  • vbscriptで作成後90日経過したフォルダを削除する方法を教えてください。

    こんにちは。 WindowsServer2003の環境で、以下のVBSを使用して作成後に90日経過したファイルを削除しています。 フォルダもファイルと同様に、作成後に90日経過したら削除を行いたいので、フォルダを削除する方法をお教えください。 ファイル削除の参考にしたサイト http://www.microsoft.com/japan/technet/scriptcenter/resources/qanda/nov06/hey1117.mspx ファイル削除VBS dtmDate = Date - 90 strDay = Day(dtmDate) If Len(strDay) < 2 Then strDay = "0" & strDay End If strMonth = Month(dtmDate) If Len(strMonth) < 2 Then strMonth = "0" & strMonth End If strYear = Year(dtmDate) strTargetDate = strYear & strMonth & strDay strComputer = "." Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") Set FileList = objWMIService.ExecQuery _ ("ASSOCIATORS OF {Win32_Directory.Name='C:\WINDOWS\system32\LogFiles\W3SVC1'} Where " _ & "ResultClass = CIM_DataFile") For Each objFile In FileList strDate = Left(objFile.CreationDate, 8) If strDate < strTargetDate Then If objFile.Extension = "log" Then objFile.Delete End If End If Next よろしくお願いいたします。

  • ログオンスクリプトとwindows 2003

    ログオンスクリプトを作成しています。 ユーザ毎にネットワークプリンタを指定して接続したいのですが、 サーバはActiveDirectoryでドメインコントローラになっております。 ユーザはドメインにログインする予定です。 どの様に記述したらいいかわかりません。 環境 サーバのコンピュータ名:OKSV サーバの共有ネットワークプリンタ名 : OK-PRINTER1とOK-PRINTER2 ログインするクライアントのユーザ : PC01~PC20 でPC01~PC10でドメインにログオンした場合、 ネットワークプリンターOK-PRINTER1 PC11~PC20でドメインにログオンした場合、 ネットワークプリンタ OK-PRINTER2 をそれぞれログオンスクリプトで追加したいのですが・・・ ログオンスクリプトを使用したことがないので、 記述方法がわかりません。どなたかわかる方いらっしゃいましたら、 教えて下さい。 よろしくお願いいたします。

  • VBScriptで削除処理

    初めまして。 VBScriptを今回初めて使用しながらスクリプトを作成しようとしています。 〔質問〕 以下のような削除処理をVBScriptにて実施したいのですが、どのような構文を書けばいいのでしょうか? ご教授お願いします。 以下、例を挙げ記述致します。 (例)処理日が2008/3/22の場合。 「AAAA」ディレクトリ配下の以下のログファイルを二日前までの日付になっているログファイルのみ残し、あとは全て削除するという処理をしたい。 AAAAディレクトリの配下 ・aa080319.log→削除 ・aa080320.log→削除 ・aa080321.log→残す ・aa080322.log→残す 上記例を用いますが、自分で考えた処理フローとしまして、 (1)「AAAA」ディレクトリ配下のファイル一覧をテキストファイルに書き込む。 (2)「(1)」で作成したテキストファイルを読み込み、「2008322」と「2008321」に一致しないログファイルを削除。 以上、宜しくお願いします。

  • [VBScript]ファイルの削除

    ファイルの削除を行うために以下のように書いて実行したところ。 「Microsoft VBScript 実行時エラー '800a0046' - 書き込みできません。」 というエラーメッセージがでてしまいました。 ------------------------------- Set fso = CreateObject("Scripting.FileSystemObject") Set src = fso.GetFile(FileName.txt) src.Delete ------------------------------- ファイルのプロパティを見てもフルコントロールを許可していますし、実行者もAdmin権限です。 どこをチェックすればよろしいでしょうか? または、どのようにコーディングすればよいでしょうか?

  • ローカルユーザーとグループ

    Windows2000です コンピューターの管理     ↓ ローカルユーザーとグループ     ↓      ユーザー  でアカウント名を削除しようとすると ”各ユーザーアカウントはユーザーとは別の一意の識別子によって表わされます。 このユーザーアカウント削除した後、将来、同じ名前のユーザーアカウントを 作成しても、現在アクセス制御リストでこのユーザーアカウントに登録されている リソースへのアクセスは復元されません" と言うメッセージが出ますが、これは今登録しているアカウント名を削除ると 再び同じアカウント名を登録しても使えないと言う事だと思いますが もしそうだとすれば、再び同じアカウント名を使用する方法はないのでしょうか よろしくお願い致しますm(__)m

  • ユーザーアカウントが削除できません

    以前、PC初期に作成したコンピュータ名?を削除したいのですが Cドライブ→ユーザー(フォルダ)→1現在のフォルダ                  2初期につけたフォルダ名 2を削除したいのですが 「対象フォルダのアクセスが拒否されました。」 と実行してくれません・・。 コントロールパネル→ユーザーアカウント では administratorは1の名前になっていて(それしかない) 以前に、その名前を削除したく 初期の状態にしなおし、コンピューター名も変更したはずなのですが・・。 前のコンピューター名のファイルが残った状態でアカウントだけ削除したから、このような現象が起こってしまってるのでしょうか。 もし、解決できるのであれば教えてください・・。 どうしても消したい名前なのです・・。

専門家に質問してみよう