複数のユーザーでコンピュータを共有していると、ログオンするユーザーによって異なる共有フォルダに接続したいというケースがある。WSHとタスク・スケジューラを組み合わせると、ログオン時に自動的に共有フォルダの設定を行うことができる。現在のオフィスでは、パーソナル・コンピュータの1人1台体制がかなり浸透してきたとはいえ、まだまだ複数のユーザーでコンピュータを共有して使っているというケースは少なくないだろう。このような環境において、各ユーザー間で異なる共有フォルダを使い分けていたとしたらどうだろう。ファイル・サーバ上の共有フォルダのほかに、ユーザーごとの個人フォルダを設けるのはよく行われることである。そのたびにいちいち共有フォルダに接続し直しているのでは使い勝手も悪い。そこで、ログオン時にユーザーを判断して、自動的に共有フォルダを設定できたら、便利ではないだろうか。Host)とWindows標準のタスク・スケジューラを利用して、ログオン時に必要な共有フォルダへの接続を確立する仕組みを紹介する。手順1—テキスト・エディタでスクリプトのコードを入力するまずはテキスト・エディタ(メモ帳でも何でもよい)を開き、以下のコードを入力してほしい。引用符(')で始まる行はコードの意味を解説するためのコメント部分なので、省略してもよい。WScript.NetworkオブジェクトのUserNameプロパティは、現在のネットワークログオン名を返す。MapNetworkDriveメソッドはネットワーク・ドライブの定義を行うものである。ここではX:ドライブに共有名「\\xpsd300\ユーザ名」を割り当てている。ログオンユーザがAdministrator(管理者)であった場合には、「\\xpsd300\admin」に接続する。]]></script></job></package>サンプル・ファイルのダウンロード(注:サンプルnetuse.wsfをダウンロードするには、上のリンクを右クリックして、netuse.wsfというファイル名で保存する。File)とする必要がある。ファイル名自体は何でもよいが、ここでは「netuse.wsf」という名前で、ローカルPC上の適当なフォルダ中に保存しておく。スクリプト中のサーバ名やマップするドライブ名(例では「X:」としている)などは、環境に応じて変更していただきたい。手順2—タスク・スケジューラを設定するタスク・スケジューラ設定の詳細については、「TIPS—タスクスケジューラとWSHでバッチ処理を実現する」を参照してほしい。ほとんどの項目は前述したTIPSの設定から変更はないが、ただ1点、タスクの実行時間を選択するダイアログでは「ログオン時」を選択する必要がある。「ログオン時」を選択すると、ユーザーがログオンした時点で実行される。以上で設定は完了である。あとは適当なファイル・サーバ上にスクリプト中で指定されている共有名を設定し(もちろん、共有フォルダに対して該当するユーザーがアクセスできるように、適切なアクセス権を設定しておく必要がある)、適当なユーザーで再ログオンするだけだ。ログオン後、エクスプローラからX:ドライブに接続されていることが確認する。本稿では共有フォルダの設定のみを行ったが、WshNetworkオブジェクトの各メソッドを利用することで、共有フォルダの切断や共有プリンタの設定/解除もWSHから設定することが可能である。以下にWshNetworkオブジェクトの主要なメソッドを一覧で紹介しておく。デフォルト・プリンタの設定WshNetworkオブジェクトのメソッドこれらのメソッドを使い、プリンタへの接続や解除などを行うことができる。2000では無視される。本TIPSは、単にPCを共有している場合だけでなく、同一の設定を複数のPCに対して行いたいという場合にも便利である。オフィスで数多くのPCの設定に苦労している管理者は参考にしていただきたい。より自動抽出したものです。(2017/7/21)キーボード配列が異なる言語に誤認識された場合の対処方法を紹介。