mwultong Blog ... 프로그래밍 / 계산기

컴퓨터 엑셀 워드 포토샵 구글어스 WINDOWS JAVASCRIPT JAVA C++

 
Friday, May 26, 2006

[VBScript-VBS] 하드디스크 남은 용량을, 퍼센트로 표시하는, 비주얼 베이직 스크립트


하드디스크 등록정보를 보면, 남은 용량(사용 가능한 용량)과 함께 파이 그래프가 나오는데, 남은 용량 비율이 퍼센트로 나오지 않아서 아주 불편합니다. 윈도우2000은 물론 윈도우XP에서도 나오지 않았습니다.

마이크로소프트라는 회사 내에는, 어떻게 하면 사용자들을 불편하게 할까 하고 궁리하는 부서가 따로 있는 것 같습니다. 아무리 생각해 봐도 그런 결론밖에는 나오지 않았습니다.

그래서,
비주얼 베이직 스크립트를 사용해서 간단하게, 남은 용량을 퍼센트로 표시하는 유틸리티를 만들어 보았습니다.

컴퓨터에 물리적 하드 혹은 논리적 하드(파티션)가 몇 개 있는지 자동으로 파악하여, 모든 하드의 용량 정보를 표시합니다.



※ 아래 박스 클릭 후, 키보드 화살표 키로 좌우 스크롤 가능함
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'
'                            DiskFree v1.0
'
'                               (c)2005
'
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

   Option Explicit

   Const K = 1024

   Main




Sub Main

   Const DriveTypeRemovable = 1
   Const DriveTypeFixed     = 2
   Const DriveTypeNetwork   = 3
   Const DriveTypeCDROM     = 4
   Const DriveTypeRAMDisk   = 5
   Dim i, fso, Str, objDriveList

   Set fso = CreateObject("Scripting.FileSystemObject")
   Set objDriveList = fso.Drives

   For Each i in objDriveList
       If i.DriveType = DriveTypeFixed Then
          Str = Str & myDiskFreeCalc(i)
       End If
   Next

   MsgBox Str,,"DiskFree"

End Sub




Function myDiskFreeCalc(strDrivePath)

   Dim fso, objDrive, Str
   Dim TotalSizeBytes, TotalSizeGB
   Dim DiskUsedBytes, DiskUsedGB
   Dim DiskFreeBytes, DiskFreeGB
   Dim DiskFreePercentage

   Set fso = CreateObject("Scripting.FileSystemObject")
   Set objDrive = fso.GetDrive(fso.GetDriveName(strDrivePath))

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
   TotalSizeBytes = FormatNumber(objDrive.TotalSize, 0)
      TotalSizeGB = FormatNumber(TotalSizeBytes / (K * K * K), 2)

    DiskFreeBytes = FormatNumber(objDrive.FreeSpace, 0)
       DiskFreeGB = FormatNumber(DiskFreeBytes / (K * K * K), 2)

    DiskUsedBytes = FormatNumber( TotalSizeBytes - DiskFreeBytes, 0)
       DiskUsedGB = FormatNumber((TotalSizeBytes - DiskFreeBytes) / (K * K * K), 2)

    DiskFreePercentage = FormatNumber( (DiskFreeBytes / TotalSizeBytes) * 100, 2)
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

   Str = "[" & UCase(strDrivePath) & "] " & DiskFreePercentage & "% free" _
         & vbCrLf

   Str = Str & "TotalSize: " & TotalSizeGB & " GB" & vbCrLf
   Str = Str & "Disk Used: " & DiskUsedGB & " GB" & vbCrLf
   Str = Str & "Disk Free: " & DiskFreeGB & " GB" & vbCrLf & vbCrLf

   myDiskFreeCalc = Str

End Function




위의 코드를 DiskFree.vbs 등의 이름으로 하드에 저장하고 클릭하면 다음과 같은 창이 나오며, 하드 용량에 대한 정보가 표시됩니다. 요즘 하드는 최소한 수십 기가가 넘기 때문에, GB기가 바이트로 용량을 표시했습니다. 1024MB(메가바이트)가 1GB입니다:


하드디스크 용량 보기 VBScript




왼쪽 위의 창은 윈도우2000에서 이 스크립트를 실행시킨 화면입니다. 하드가 C: D: E: 세 개이기 때문에 3개가 모두 나왔습니다.

오른쪽의 작은 창은 윈도우XP에서 실행시킨 것입니다. XP가 깔린 PC는 지금 C드라이브 하나만 붙어 있기 때문에 하나만 나타나고 있습니다.

맨아래쪽 그림은 위의 코드가 든 파일을 바탕화면에 놓고 마우스로 클릭하여 실행시키는 장면입니다.


※ VBScript 는 비주얼 베이직 컴파일러나 오피스가 없어도 실행됩니다. 비주얼 베이직 자체와는 관련이 없고, 서로 독립적인 언어입니다.




▶▶ 윈도우XP] 하드 디스크 남은 용량, 드라이브 사이즈 보는 방법; Windows HDD Disk Free Size




tag: batch
배치파일 | DOS CMD BATCH .BAT
tag: windows
윈도우 | Windows 7 | Windows XP | Windows 2000

0 Comments:

<< Home RSS 2.0 feed

구글 Google 에서 제공하는 무료 블로그 서비스인 블로거 Blogger 의 인터넷 주소는 www.blogger.com 입니다. Blogger 에 블로그를 만들면, blogspot.com 이라는 주소에 블로그가 생성됩니다.
블로그를 직접 방문하지 않고도 최신 게시물을 구독하려면 RSS 2.0 feed 주소를 리더기에 등록하시면 됩니다.
Previous Posts
Monthly Archives
Top