ループ処理を入れ子にする事で実装可能。

 

Do

  Do

  XXXXXXXXX

    Exit Do

  Loop Until 1

Loop Until XXX

Dim Body, objNetWork, MyString, LeftString, YearString, MonthString, Caution

Dim objfs:set objfs = createobject("scripting.filesystemobject"):sub include(p):executeglobal objfs.OpenTextfile(p).readall:end sub
include(objFs.BuildPath("格納先パス", "config.txt"))

Size = 0
Count = 0
FreeSpace = 0
UseVolume = 0
LogName = "HDD-LOG"
Extension = "log"
LocationFolder = "ログ保存ディレクトリ名"
DT2 = DT1 + replace (time, ":", "")
DT3 = objNetWork.ComputerName & "_" & DT2


MyString = DT1
LeftString = Left(MyString, 6) ' LeftString は、"YYYYMM" です。
YearString = Left(MyString, 4) ' LeftString は、"YYYY" です。
MonthString = Mid(MyString, 5,2) ' LeftString は、"MM" です。

Sub CreateFolder2(objFSO, strFolder)
strParent = objFSO.GetParentFolderName(strFolder)
If Not objFSO.FolderExists(strParent) Then
CreateFolder2 objFSO, strParent
End If
objFSO.CreateFolder(strFolder)
End Sub

Function CreateTextFile2(objFSO, strFile)
strParent = objFSO.GetParentFolderName(strFile)
If Not objFSO.FolderExists(strParent) Then
CreateFolder2 objFSO, strParent
End If
Set CreateTextFile2 = objFSO.CreateTextFile(strFile)
End Function

Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
Set objOutput = CreateTextFile2(objFSO, LocationFolder&"\"&LogName&"\" & LeftString & "\Readme.txt")
objOutput.WriteLine (YearString & "年" & MonthString & "月度のHDD使用率状況ログです。")
Set fso = CreateObject("Scripting.FileSystemObject")
Set tmpFile = fso.CreateTextFile(LocationFolder&"\"&LogName&"\" & LeftString & "\" & DT3 & "." & Extension)


'タイトルの表示ヘッダー部分
Title = "コンピュータ名" & vbTab & "取得日時" & vbTab & "ドライブ名" & vbTab & "空き容量" & vbTab & "使用容量" & vbTab & "フルサイズ" & vbTab & "使用率" '& vbCrLf
tmpFile.WriteLine(Title)

Dim strPC

For Each strPC In CheckPC
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strPC & "\root\cimv2")
Set objSWbemObjectCollection = objWMIService.ExecQuery("Select * from Win32_LogicalDisk Where DriveType = 3")

Set objNetWork = Nothing

For Each objSWbemObject in objSWbemObjectCollection
DeviceID = objSWbemObject.DeviceID
Size = objSWbemObject.Size
FreeSpace = objSWbemObject.FreeSpace
ExistPersent = FormatNumber((100 - FreeSpace / Size * 100),2)
UseVolume = Size - FreeSpace
ExistPersents = 100 - FreeSpace / Size * 100
If ( ExistPersents > CDbl(80) ) Then
Caution = "CAUTION!!!"
Else
Caution = ""
End If

If Int(FreeSpace / 1024 / 1024) > 999 Then
FreeSpace = FormatNumber((FreeSpace / 1024 / 1024 / 1024),2) & "GB"
else
FreeSpace = Int(((FreeSpace / 1024 / 1024) + 0.5)) & "MB" '四捨五入
End If
If Int(Size / 1024 / 1024) > 999 Then
Size = FormatNumber((Size / 1024 / 1024 / 1024),2) & "GB"
else
Size = Int(((Size / 1024 / 1024) + 0.5)) & "MB" '四捨五入
End If
If Int(UseVolume / 1024 / 1024) > 999 Then
UseVolume = FormatNumber((UseVolume / 1024 / 1024 / 1024),2) & "GB"
else
UseVolume = Int(((UseVolume / 1024 / 1024) + 0.5)) & "MB" '四捨五入
End If
Body = Body & strPC & vbTab & date & " " & time & vbTab & DeviceID & vbTab & FreeSpace & vbTab & UseVolume & vbTab & Size & vbTab & ExistPersent & "%" & vbTab & Caution & vbCrLf '使用率設定
Next
Next


tmpFile.WriteLine(Body)
WScript.Echo Title & vbCrLf & Body
tmpFile.close


config――――――――――――――――――――――――――――

'
' Configuration Section
'

Dim CheckPC(1)
CheckPC(0) = "コンピューター名1"
CheckPC(1) = "コンピューター名2"
――――――――――――――――――――――――――――――-


①「スタート」「ファイル名を指定して実行」

②「regedit」と入力してOKクリック

HKEY_USERS\.Default\Control Panel\Keyboard

  このキーの InitialKeyboardIndicators 値を 0 から 2 に変更

警告が出てマウスが動かない

『リモート デスクトップ セッションでマウスがキャプチャされていません』


検索して、「操作」-「統合サービス セットアップ ディスクの挿入」とやってみるが、いっこうに動かない…なぜ??


>>解決

SETUPが自動で動かない

キーボードで動かしずらいけど、手動でやるべし。

①ヘッダーにチェックボックスを追加

②①にチェックイベント追加

③AutoPostBackプロパティをTrueに設定

④②のイベントに下記記載

''' <summary>
''' 『全てを選択 - 全ての選択を解除』チェックボックス変更イベント処理
''' </summary>
Protected Sub chkAll_CheckedChanged(ByVal sender As Object, ByVal e As EventArgs)

Dim chk As Boolean = CType(sender, CheckBox).Checked
Dim item As DataGridItem

For Each item In dgList.Items
CType(item.FindControl("chk"), CheckBox).Checked = chk
Next

End Sub

ある日突然、Visual Studio 2008 環境にて、

TableAdapter のデータセットデザイナーが表示されなくなった。

XMLで表示されてしまうのだ。


試してみた事↓

[ツール]-[データベースへの接続] をしてみたけど、反応なし。

[ツール]-[サーバーの接続] をしてみたけど、反応なし。

VisualStudio 再起動したけど、変化なし。

PC再起動したけど反応なし。


困った~(´ヘ`;)


□ 解決方法 □

事前に Visual Studio は閉じておく。


①[Microsoft Visual Studio 2008]-[Visual Studio Tool]-[Visual Studio 2008 コマンド プロンプト]を管理者モードで起動。


②'devenv /resetskippkgs' を実行。


Visual Studio が自動で起動して、正常に表示されるようになった。