以下の方法はWindowsXP以前のクライアント環境で実施してください
※WindowsVista/Windows7環境下では正常に動作しません
1.ログオンスクリプトの設定(PC起動時毎回実行する方法)
プログラムを一度クライアントにコピーしてプログラムを実行します。実行にはPowerUser以上の権限が必要です。
if exist %windir%\pcasset\pcasset.exe goto pcasset_start
SET COPYCMD=/Y
mkdir %windir%\pcasset
copy \\server\pcasset\*.* %windir%\pcasset
SET COPYCMD=
:pcasset_start
SET COPYCMD=/Y
xcopy \\server\pcasset\pcasset.exe %windir%\pcasset /D /I
xcopy \\server\pcasset\pcasset.ini %windir%\pcasset /D /I
SET COPYCMD=
%windir%\pcasset\pcasset.exe
【解説】
rem Windowsディレクトリにプログラムの有無を確認しあればpcasset_startにジャンプ
if exist %windir%\pcasset\pcasset.exe goto pcasset_start
rem 上書きコピーをYESにセット
SET COPYCMD=/Y
rem Windowsディレクトリにpcassetフォルダを作成
mkdir %windir%\pcasset
rem プログラムおよび設定ファイルをクライアントにコピー
copy \\server\pcasset\*.* %windir%\pcasset
rem 上書きコピーを解除
SET COPYCMD=
rem ラベル
:pcasset_start
rem 上書きコピーをYESにセット
SET COPYCMD=/Y
rem pcasset.exeの更新日を比較し新しければコピーする
xcopy \\server\pcasset\pcasset.exe %windir%\pcasset /D /I
rem pcasset.iniの更新日を比較し新しければコピーする
xcopy \\server\pcasset\pcasset.ini %windir%\pcasset /D /I
rem 上書きコピーを解除
SET COPYCMD=
rem プログラムを実行します
%windir%\pcasset\pcasset.exe
2.ログオンスクリプトの設定(必要なときにデータを取得する方法)
プログラムを一度クライアントにコピーしてプログラムを実行します。実行にはPowerUser以上の権限が必要です。
set ymd=20060721
if exist %windir%\pcasset\%ymd%.txt goto pcasset_end
if exist %windir%\pcasset\pcasset.exe goto pcasset_start
SET COPYCMD=/Y
mkdir %windir%\pcasset
copy \\server\pcasset\pcasset\*.* %windir%\pcasset
SET COPYCMD=
:pcasset_start
SET COPYCMD=/Y
xcopy \\server\pcasset\pcasset.exe %windir%pcasset /D /I
xcopy \\server\pcasset\pcasset.ini %windir%pcasset /D /I
SET COPYCMD=
%windir%\pcasset\pcasset.exe >%windir%\pcasset\%ymd%.txt
:pcasset_end
【解説】
rem 変数ymdを入れ替えることでクライアントから情報を取得できます。日付以外でもいいですが、過去の値と重複しない値をセットしてください。
set ymd=20060721
rem Windows\pcassetディレクトリにymd(20060721).txtがあればpcasset_endにジャンプする
if exist %windir%\pcasset\%ymd%.txt goto pcasset_end
rem Windows\pcassetディレクトリにプログラムの有無を確認しあればpcasset_startにジャンプ
if exist %windir%\pcasset\pcasset.exe goto pcasset_start
rem 上書きコピーをYESにセット
SET COPYCMD=/Y
rem Windowsディレクトリにpcassetフォルダを作成
mkdir %windir%pcasset
rem プログラムおよび設定ファイルをクライアントにコピー
copy \\server\pcasset\*.* %windir%pcasset
rem 上書きコピーを解除
SET COPYCMD=
rem ラベル
:pcasset_start
rem 上書きコピーをYESにセット
SET COPYCMD=/Y
rem pcasset.exeの更新日を比較し新しければコピーする
xcopy \\server\pcasset\pcasset.exe %windir%pcasset /D /I
rem pcasset.iniの更新日を比較し新しければコピーする
xcopy \\server\pcasset\pcasset.ini %windir%pcasset /D /I
rem 上書きコピーを解除
SET COPYCMD=
rem プログラムを実行します。ymd(20060721).txtファイルを作成します。
%windir%\pcasset\pcasset.exe >%windir%\pcasset\%ymd%.txt
rem ジャンプ用のラベル
:pcasset_end
|