2009-07-30 13:20:35 +0000 2009-07-30 13:20:35 +0000
27
27

Windowsにログオンしたときに自動的にスクリプトを実行する

Windowsにログオンしたときに自動的にスクリプトを実行するにはどうしたらいいですか?

コンピュータにログインしたときに、このようなスクリプトを実行したいのですが、どうすればいいですか?

回答 (6)

22
22
22
2009-07-30 13:36:28 +0000

すでにスクリプトがある場合。

ログオンスクリプトをユーザーまたはグループに割り当てるには

  • コンピュータ管理を開きます。
  • コンソールツリーで「ユーザー」をクリックします。

どこですか?システムツール/ローカルユーザーとグループ/ユーザー

  • ログオンスクリプトを割り当てるユーザーをダブルクリックします。
  • プロファイルタブをクリックします。
  • [ログオンスクリプト]フィールドに、そのユーザーに割り当てるログオンスクリプトのパスと名前を入力し、[OK]をクリックします。 その他、Microsoftの便利な「HowTo」はこちら

ログオンスクリプトの作成

ログオンスクリプトを使用して、ユーザーが特定のコンピュータにログオンしたときに実行されるタスクを割り当てることができます。スクリプトは、オペレーティング システム コマンドを実行したり、システム環境変数を設定したり、他のスクリプトや実行可能プログラムを呼び出したりすることができます。Windows Server 2003 ファミリは 2 つのスクリプト環境をサポートしています。コマンドプロセッサはバッチ言語コマンドを含むファイルを実行し、Windows Script Host (WSH) は Microsoft Visual Basic Scripting Edition (VBScript) または Jscript コマンドを含むファイルを実行します。テキスト エディタを使用してログオン スクリプトを作成することができます。ログオンスクリプトによって一般的に実行されるタスクには、次のようなものがあります。

  • ネットワークドライブのマッピング。
  • ユーザーのデフォルトプリンタのインストールと設定。
  • コンピュータシステム情報の収集。
  • ウイルスシグネチャの更新。
  • ソフトウェアの更新。
  • 以下の例のログオンスクリプトには、Active Directory
  • サービスインターフェイス(ADSI)を使用して、ユーザーのグループメンバーシップに基づいて3つの一般的なタスクを実行するVBScriptコマンドが含まれています。

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 という拡張子を使用します。

19
19
19
2014-08-15 22:12:37 +0000

コンピュータのロックが解除されたときに実行されるスケジュールされたタスクを作成することができます。(注意: これが正しいトリガーを取得する唯一の方法である) 4. - 一般タブ - タスクの名前を入力する - トリガータブ - 新規作成…をクリックして、ワークステーションのロックを解除するを選択する - アクションタブ - 新規作成…をクリックして、参照…をクリックしてスクリプトを探す - 条件タブ - コンピュータがAC電源をオンにしている場合のみタスクを開始するのチェックを外す

また、スクリプトのパスを

echo %USERNAME% logged on at %DATE% %TIME% >> %USERPROFILE%\log.txt
``` と読むように微調整しました。
14
14
14
2009-07-30 13:21:37 +0000

私が考えられる最も簡単な方法は、スタートアップフォルダ内の.batファイルにこれを入れることです。

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run

レジストリキーにあるレジストリにバッチファイルを追加することです。

2
2
2
2009-07-30 13:37:08 +0000

別の良い方法は、実行したいコマンドを含むバッチファイルを作成することです。次に、マシンのポリシーエディタで、ログインプロセスの一部としてログインスクリプトを実行するように指定します。このオプションはXP Proでのみ利用可能で、ホームバージョンでは利用できません。 グループポリシーエディタのチュートリアルはこちら

2
2
2
2010-05-14 12:50:45 +0000

どなたか、画面がロックされている/されていない時にも実行できるかどうか知っていますか?

Windows7やWindows Server 2008には方法があります。

タスクスケジューラを使用して、新しい基本タスクを作成し、トリガーとして “When I log on "を使用します。

2
2
2
2015-01-06 09:53:34 +0000

その必要はありません。Windowsはすでにイベントログに これを記録する仕組み を持っています。イベントIDは4624(Vista以前のシステムでは528)です。