PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
7863 99/08/28 21:43:33 RE(8):PB6.5: NTFSでフォーマットしたディスクの空き容量について By fan
7862 99/08/28 17:20:56 RE(7):PB6.5: NTFSでフォーマットしたディスクの空き容量について By fan
7841 99/08/27 13:56:46 RE(6):PB6.5: NTFSでフォーマットしたディスクの空き容量について By STRATOVARIUS
7839 99/08/27 13:45:39 RE(5):PB6.5: NTFSでフォーマットしたディスクの空き容量について By Taka
7837 99/08/27 12:59:21 RE(4):PB6.5: NTFSでフォーマットしたディスクの空き容量について By peanuts
7835 99/08/27 12:36:16 RE(3):PB6.5: NTFSでフォーマットしたディスクの空き容量について By fan
7825 99/08/27 10:47:34 RE(2):PB6.5: NTFSでフォーマットしたディスクの空き容量について By Taka
7819 99/08/26 22:18:51 RE(1):PB6.5: NTFSでフォーマットしたディスクの空き容量について By STRATOVARIUS
7818 99/08/26 20:57:57 PB6.5: NTFSでフォーマットしたディスクの空き容量について By fan

カテゴリ:PowerBuilderの開発環境
日付:1999年08月27日 13:45 発信者:Taka
題名:RE(5):PB6.5: NTFSでフォーマットしたディスクの空き容量について

peanutsさん、こんにちは。

>>APIの宣言は以下のようになっています。
>>Function boolean GetDiskFreeSpaceA(string s1, ref ulong l2, ref ulong l3, ref ulong l4, ref 
ulong 
>l5) Library \"kernel32.dll\"

>桁溢れしてません?
>PBのLong型の範囲は、-2,147,483,648 ? +2,147,483,647 Byte
>1GBは、1024^3で、1,073,741,824 Byte

あ、これ要注意ですね。
 uLong型変数 = l2 * l3 * l4
でやると、6GBの場合だと桁溢れするので狂います。
 uLong型変数 = l2 * l3 * l4 / 1024 / 1024
にして、MB単位で左辺に代入すると良いかもしれません。

あと、GetDiskFreeSpaceExというAPIもあります。新しい環境ではこちらを使ったほうが確実みたいです。

付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows NT 4.0
DBMS (記載なし)
Browser (記載なし)

Server SoftWare

OS (記載なし)
DBMS Microsoft SQL Server 6.5
WebServer (記載なし)

PowerSpaceの運営は、パワーフューチャー株式会社が行っております。
Copyright © 2013 Power Future Co., Ltd.