| 3762 | } |
| 3763 | |
| 3764 | VOID |
| 3765 | Ext2RefreshVLCD( |
| 3766 | CListCtrl *List, |
| 3767 | PEXT2_CDROM Cdrom, |
| 3768 | int nItem |
| 3769 | ) |
| 3770 | { |
| 3771 | ULONGLONG totalSize; |
| 3772 | CString sSize, sUnit, s; |
| 3773 | |
| 3774 | PEXT2_LETTER first = NULL; |
| 3775 | |
| 3776 | CString Letters = Ext2QueryVolumeLetterStrings( |
| 3777 | Cdrom->DrvLetters, &first); |
| 3778 | |
| 3779 | List->SetItem( nItem, 1, LVIF_TEXT, (LPCSTR)Letters, 0, 0, 0,0); |
| 3780 | |
| 3781 | s.LoadString(IDS_DISK_TYPE_BASIC); |
| 3782 | List->SetItem(nItem, 2, LVIF_TEXT, (LPCSTR)s, 0, 0, 0,0); |
| 3783 | List->SetItem(nItem, 3, LVIF_TEXT, (LPCSTR)"CDFS", 0, 0, 0,0); |
| 3784 | |
| 3785 | |
| 3786 | totalSize = (ULONGLONG)Cdrom->DiskGeometry.Cylinders.QuadPart; |
| 3787 | totalSize = totalSize * Cdrom->DiskGeometry.TracksPerCylinder * |
| 3788 | Cdrom->DiskGeometry.SectorsPerTrack * |
| 3789 | Cdrom->DiskGeometry.BytesPerSector; |
| 3790 | |
| 3791 | if (totalSize > 1024 * 1024 * 1024) { |
| 3792 | totalSize = totalSize / (1024 * 1024 * 1024); |
| 3793 | sUnit = " GB"; |
| 3794 | } else if (totalSize > 1024 * 1024){ |
| 3795 | totalSize = totalSize / (1024 * 1024); |
| 3796 | sUnit = " MB"; |
| 3797 | } else if (totalSize > 1024){ |
| 3798 | totalSize = totalSize / (1024); |
| 3799 | sUnit = " KB"; |
| 3800 | } else { |
| 3801 | sUnit = " B"; |
| 3802 | } |
| 3803 | |
| 3804 | sSize.Format("%I64u", totalSize); |
| 3805 | sSize += sUnit; |
| 3806 | List->SetItem(nItem, 4, LVIF_TEXT, (LPCSTR)sSize, 0, 0, 0,0); |
| 3807 | |
| 3808 | sSize.Format("%I64u", totalSize); |
| 3809 | sSize += sUnit; |
| 3810 | List->SetItem(nItem, 5, LVIF_TEXT, (LPCSTR)sSize, 0, 0, 0,0); |
| 3811 | |
| 3812 | List->SetItem(nItem, 8, LVIF_TEXT, (LPCSTR)Cdrom->Name, 0, 0, 0,0); |
| 3813 | } |
| 3814 | |
| 3815 | VOID |
| 3816 | Ext2InsertCdromAsVolume( |
no test coverage detected