誰がどのPCを利用中で、どのPCが空きなのか分かるようにしたい時に使用するプログラム。
以下のプログラムを、状態把握したいPCのグループポリシーに登録すると履歴が残るようになります。
以下のプログラムを、状態把握したいPCのグループポリシーに登録すると履歴が残るようになります。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<job> | |
<script> | |
fs = new ActiveXObject('Scripting.FileSystemObject') | |
net = new ActiveXObject('WScript.Network') | |
d = new Date() | |
path = fs.getParentFolderName(WScript.ScriptFullName) | |
ws = fs.OpenTextFile(path + '/履歴.txt', 8, true) | |
モード = WScript.Arguments(0) | |
二桁 = function(s){s='0'+s;return s.slice(s.length-2,s.length)} | |
ws.Write( | |
[ | |
[d.getFullYear(),二桁(d.getMonth()+1),二桁(d.getDate())].join('/')+' '+[二桁(d.getHours()),二桁(d.getMinutes()),二桁(d.getSeconds())].join(':'), | |
モード, | |
net.userName, | |
net.computerName | |
].join('\t')+'\r\n' | |
) | |
ws.Close() | |
pathPC = path+'/computerName/'+net.computerName+'/'+net.userName | |
pathUser = path+'/userName/' +net.userName +'/'+net.computerName | |
makeFolders = function(path){ | |
var arr=path.replace(/\\/g,'/').split('/'), i=1 | |
if(!arr[0] && !arr[1]){i=4} | |
for(var L=arr.length;i<L;i++){ | |
if(!fs.FolderExists(arr.slice(0,i).join('\\'))){ | |
fs.CreateFolder(arr.slice(0,i).join('\\')) | |
} | |
} | |
} | |
switch(モード){ | |
case 'ログオン': | |
makeFolders(pathPC +'/1') | |
makeFolders(pathUser+'/1') | |
break | |
case 'ログオフ': | |
fs.FolderExists(pathPC ) ? fs.DeleteFolder(pathPC ) : 0 | |
fs.FolderExists(pathUser) ? fs.DeleteFolder(pathUser) : 0 | |
break | |
} | |
</script> | |
</job> |
1.グループポリシーを開く

2.ユーザーの構成 → Windowsの設定 → スクリプト(ログオン/ログオフ)

3.「編集」ボタンをクリック

4.「スクリプト名」にスクリプトのUNCパスを入力する。パラメーターは「ログオン」の「スクリプトの編集」画面では「ログオン」を入力。「ログオフ」の方は「ログオフ」にする。

以上で、次回のログオン・ログオフ時から以下のような履歴が残ります。

2.ユーザーの構成 → Windowsの設定 → スクリプト(ログオン/ログオフ)

3.「編集」ボタンをクリック

4.「スクリプト名」にスクリプトのUNCパスを入力する。パラメーターは「ログオン」の「スクリプトの編集」画面では「ログオン」を入力。「ログオフ」の方は「ログオフ」にする。

以上で、次回のログオン・ログオフ時から以下のような履歴が残ります。
[履歴] スクリプトと同じフォルダ ├ computerName | ├ PC1 | | └ User1 | └ PC2 └ userName ├ User1 | └ PC1 ├ User2 └ User3
上記の場合、PC1はUser1がログオン中(「ユーザーの切り替え」でユーザー選択画面になっていてもこの状態)
PC2は誰もログオンしていない。
User1はPC1にログオン中。リモートデスクトップなどでPC2にログオンすれば、userName\User1の下にPC2のフォルダが作成される。
User2、User3はどのPCにもログオンしていない。
User1がPC1からログオフすると、computerName\PC1\User1は削除される。
PC2は誰もログオンしていない。
User1はPC1にログオン中。リモートデスクトップなどでPC2にログオンすれば、userName\User1の下にPC2のフォルダが作成される。
User2、User3はどのPCにもログオンしていない。
User1がPC1からログオフすると、computerName\PC1\User1は削除される。
0 件のコメント:
コメントを投稿