GETDRIVESIZEQQ

実行時関数:指定したドライブ上の全体の大きさと空き容量を得ます。

モジュールUSE DFLIB

形式

result = GETDRIVESIZEQQ (drive, total, avail)

drive
(入力) CHARACTER*(*)。情報を得たいドライブのドライブ文字を含む文字列。

total
(出力) INTEGER(4) または INTEGER(4)DIMENSION(2) または INTEGER(8)。指定したドライブの総バイト数。

avail
(出力) INTEGER(4) または INTEGER(4)DIMENSION(2) または INTEGER(8)。指定したドライブの空きバイト数。

結果

結果の型は LOGICAL(4) です。成功すれば .TRUE.,そうでなければ .FALSE. が返されます。

totalavail 引数に対して指定するデータ型と次元 (もしあれば) は同じでなければなりません。2 つの INTEGER(4) 要素の配列または INTEGER(8) の引数を指定すると,2147483647 よりも大きいドライブの大きさを返すことができます。

2 つの INTEGER(4) 要素の配列が指定されると,下位 32 ビットが第 1 要素に返され,上位 32 ビットが第 2 要素に返されます。INTEGER(4) スカラが指定されると,下位 32 ビットが返されます。

ドライブは 1 つのアルファベット文字で識別されるため,GETDRIVESIZEQQdrive の第 1 文字のみを検証します。ドライブ文字は,大文字小文字の区別はありません。現在のドライブの大きさを得るには,シンボル定数 FILE$CURDRIVE (\DF98\INCLUDE サブディレクトリの DFLIB.F90 に定義されています) を使うことができます。

GETDRIVESIZEQQ が失敗した場合,GETLASTERRORQQ を使って原因を究明します。

互換性

CONSOLE STANDARD GRAPHICS QUICKWIN GRAPHICS WINDOWS DLL LIB

関連情報

CHANGEDIRQQCHANGEDRIVEQQGETDRIVEDIRQQGETDRIVESQQGETLASTERRORQQ

	! GETDRIVESQQ と GETDRIVESIZEQQ の例
	USE DFLIB
	CHARACTER(26) drives
	CHARACTER(1) adrive
	LOGICAL(4) status
	INTEGER(4) total, avail
	INTEGER(2) i
	! ドライブの一覧を得ます。
	drives = GETDRIVESQQ()
	WRITE (*,'(A, A)') ' Drives available: ', drives
	!
	! 一覧からドライブを取り出し,コンソールに各ドライブの空き容量を出力します。
	DO i = 1, 26
	  adrive = drives(i:i)
	  status = .FALSE.
	  WRITE (*,'(A, A, A, \)') ' Drive ', CHAR(i + 64), ':'
	  IF (adrive .NE. ' ') THEN
	     status = GETDRIVESIZEQQ(adrive, total, avail)
	  END IF
	  IF (status) THEN
	     WRITE (*,*) avail, ' of ', total, ' bytes free.'
	  ELSE
	     WRITE (*,*) 'Not available'
	  END IF
	END DO
	END