|
LboxInfo は単独で作成しても良いですが、LboxDlg は LboxInfo を継承していますからその中で使用できます
( 実際は、LboxWin を経由して継承しています )
|
|
|
// *********************************************************
// ドライブのボリューム名
// lpDrive には、"C:\\" のようにセット
// 戻り値 : 失敗した場合は 0
// *********************************************************
int LboxInfo::VolumeName( LPCTSTR lpDrive, LboxString *LString )
{
int nLen;
while( 1 ) {
nLen = LboxInfo::VolumeName(
lpDrive,
LString->szLboxString,
LString->nLboxString
);
if ( nLen == 0 ) {
return nLen;
}
nLen = lstrlen( LString->szLboxString );
if ( nLen >= (int)(LString->nLboxString) - 2 ) {
if ( LString->nLboxString > LBOX_STRINGMAX ) {
break;
}
LString->Resize( LString->nLboxString + 32 );
continue;
}
break;
}
return nLen;
}
BOOL LboxInfo::VolumeName( LPCTSTR lpDrive, LPTSTR lpBuffer, int nSize )
{
DWORD MaximumComponentLength,FileSystemFlags;
return GetVolumeInformation(
lpDrive,
lpBuffer,
(DWORD)nSize,
NULL,
&MaximumComponentLength,
&FileSystemFlags,
NULL,
NULL
);
}
| |
|
|
|