Windowsにログオンしたときに自動的にスクリプトを実行する
Windowsにログオンしたときに自動的にスクリプトを実行するにはどうしたらいいですか?
コンピュータにログインしたときに、このようなスクリプトを実行したいのですが、どうすればいいですか?
すでにスクリプトがある場合。
ログオンスクリプトをユーザーまたはグループに割り当てるには
どこですか?システムツール/ローカルユーザーとグループ/ユーザー
ログオンスクリプトの作成
ログオンスクリプトを使用して、ユーザーが特定のコンピュータにログオンしたときに実行されるタスクを割り当てることができます。スクリプトは、オペレーティング システム コマンドを実行したり、システム環境変数を設定したり、他のスクリプトや実行可能プログラムを呼び出したりすることができます。Windows Server 2003 ファミリは 2 つのスクリプト環境をサポートしています。コマンドプロセッサはバッチ言語コマンドを含むファイルを実行し、Windows Script Host (WSH) は Microsoft Visual Basic Scripting Edition (VBScript) または Jscript コマンドを含むファイルを実行します。テキスト エディタを使用してログオン スクリプトを作成することができます。ログオンスクリプトによって一般的に実行されるタスクには、次のようなものがあります。
WSH Network オブジェクトの MapNetworkDrive メソッドを WSH Network オブジェクトの UserName プロパティと組み合わせて呼び出すことで、H: ドライブをユーザーのホーム・ディレクトリにマップします。これは ADSI IADsADSystemInfo オブジェクトを使用して現在のユーザーの識別名を取得し、それが Active Directory の対応するユーザー・オブジェクトに接続するために使用されます。接続が確立されると、ユーザーの memberOf 属性を使用して、ユーザーがメンバーであるグループのリストが取得されます。グループ名の多値リストは、VBScriptのJoin関数を使用して1つの文字列に結合され、対象となるグループ名の検索が容易になります。
現在のユーザーがスクリプトの先頭に定義された3つのグループのいずれかのメンバーである場合、スクリプトはユーザーのG:ドライブをグループの共有ドライブにマッピングし、ユーザーのデフォルトプリンタをグループプリンタに設定します。ログオンスクリプトの例を作成するには
以下をコピーして貼り付けるか、入力します。
[ファイル]メニューで、[名前を付けて保存]をクリックします。
[Save in]で、ドメインコントローラのNetlogon共有フォルダに対応するディレクトリをクリックします(通常は、SystemRootS\SYSVOL\SYSVOL\SYSvol\DomainNameScriptsで、DomainNameはドメインの完全修飾ドメイン名です)。
[Save as type]で、[All Files]をクリックします。
[File name]に、ファイル名の後に.vbsを続けて入力し、[Save]をクリックします。WSH は VBScript コマンドを含むファイルを識別するために .vbs という拡張子を使用します。
コンピュータのロックが解除されたときに実行されるスケジュールされたタスクを作成することができます。(注意: これが正しいトリガーを取得する唯一の方法である) 4. - 一般タブ - タスクの名前を入力する - トリガータブ - 新規作成…をクリックして、ワークステーションのロックを解除するを選択する - アクションタブ - 新規作成…をクリックして、参照…をクリックしてスクリプトを探す - 条件タブ - コンピュータがAC電源をオンにしている場合のみタスクを開始するのチェックを外す
また、スクリプトのパスを
echo %USERNAME% logged on at %DATE% %TIME% >> %USERPROFILE%\log.txt
``` と読むように微調整しました。
私が考えられる最も簡単な方法は、スタートアップフォルダ内の.batファイルにこれを入れることです。
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
レジストリキーにあるレジストリにバッチファイルを追加することです。
別の良い方法は、実行したいコマンドを含むバッチファイルを作成することです。次に、マシンのポリシーエディタで、ログインプロセスの一部としてログインスクリプトを実行するように指定します。このオプションはXP Proでのみ利用可能で、ホームバージョンでは利用できません。 グループポリシーエディタのチュートリアルはこちら
どなたか、画面がロックされている/されていない時にも実行できるかどうか知っていますか?
Windows7やWindows Server 2008には方法があります。
タスクスケジューラを使用して、新しい基本タスクを作成し、トリガーとして “When I log on "を使用します。
その必要はありません。Windowsはすでにイベントログに これを記録する仕組み を持っています。イベントIDは4624(Vista以前のシステムでは528)です。