「hmPy・IronPython」の例題② ドライブの空き容量

  • 概要

    IronPythonの例題のひとつとなります。
    ドライブの空き容量といった分かりやすい例となります。

    Cドライブの空き容量

    GetStrVarは、元がどのような「型」であったとしても、文字列化してくれるので
    秀丸マクロにとっては融通が利きやすい関数と言えるでしょう。

    #PY = loaddll( hidemarudir + @"\hmPy.dll" );
     
    #_ = dllfuncw( #PY, "DoString", R"IPY(
    
    import clr
    import System
    
    drive = System.IO.DriveInfo('C') 
    GBT = 1024*1024*1024                                  # 見やすい単位であるギガバイトに直すため。
    TotalSize          = drive.TotalSize/GBT
    TotalFreeSpace     = drive.TotalFreeSpace/GBT
    AvailableFreeSpace = drive.AvailableFreeSpace/GBT
    
    # それぞれの値を秀丸マクロに文字列として伝搬
    hm.Macro.Var["$TotalSize"] = TotalSize
    hm.Macro.Var["$TotalFreeSpace"] = TotalFreeSpace
    hm.Macro.Var["$AvailableFreeSpace"] = AvailableFreeSpace
    
    )IPY"
    );
    
    message("Cドライブの総量:"+$TotalSize+"GB");
    message("Cドライブの空き容量:"+$TotalFreeSpace+"GB");
    message("Cドライブの利用可能空き容量:"+$AvailableFreeSpace+"GB");
    
    freedll( #PY );