так а из какой переменной потом брать размер диска. я пробовал все и кроме 1, 0, 261. я ничего не получаю. Alca Юзал твой код.
| Код | BOOL TForm1::GetVolumeInformation( LPCTSTR lpRootPathName, LPTSTR lpVolumeNameBuffer, DWORD nVolumeNameSize, LPDWORD lpVolumeSerialNumber, LPDWORD lpMaximumComponentLength, LPDWORD lpFileSystemFlags, LPTSTR lpFileSystemNameBuffer, DWORD nFileSystemNameSize ) { Label1->Caption= nFileSystemNameSize; }
void __fastcall TForm1::Button1Click(TObject *Sender) { #define ARRAYSIZE(a) (sizeof(a)/sizeof(a[0])) TCHAR volumeName[MAX_PATH + 1] = { 0 }; TCHAR fileSystemName[MAX_PATH + 1] = { 0 }; DWORD serialNumber = 0; DWORD maxComponentLen = 0; DWORD fileSystemFlags = 0; if (GetVolumeInformation( _T("\\\\Gdm-alex\\Install\\"), volumeName, ARRAYSIZE(volumeName), &serialNumber, &maxComponentLen, &fileSystemFlags, fileSystemName, ARRAYSIZE(fileSystemName))); //Label1->Caption=maxComponentLen;
}
|
Что-то скорее всего не так. |