10{
12 wchar_t Text2[1000];
13 wchar_t Text3[1000];
14
16
17
19
20
22
23
25
26
28
29
30 if (Fractional)
31 {
33 (BytesDivisor / 1024)) / 1024.0, BytesUnits);
34 }
35 else
36 {
40 }
41
43
44
45 if (Fractional)
46 {
48 (BytesDivisor / 1024)) / 1024.0, BytesUnits);
49 }
50 else
51 {
55 }
57
58
62
63
66
67
70
71
74
75
80
81
84
85
86 if (Fractional)
87 {
89 (BytesDivisor / 1024)) / 1024.0, BytesUnits);
90 }
91 else
92 {
96 }
98
99
100 if (Fractional)
101 {
103 (BytesDivisor / 1024)) / 1024.0, BytesUnits);
104 }
105 else
106 {
110
111 }
113
114
115 if (Fractional)
116 {
118 (BytesDivisor / 1024)) / 1024.0, BytesUnits);
119 }
120 else
121 {
125 }
129
130
131 bool PFRec = false;
132 bool AFRec = false;
133
135 PFRec = true;
136
138 AFRec = true;
139
141
142 if (PFRec)
143 {
145 (
146 Text2,
147 L"%.2f%% of the files on this volume are fragmented. ",
149 );
150
152 }
153
154 if (AFRec)
155 {
157 (
158 Text2,
159 L"The average fragments per file (%.2f) indicates a high degree of fragmentation. ",
161 );
162
164 }
165
167 swprintf (
Text,
L"* No defragmentation is necessary at this point.");
168 else
170 wcscat (
Text,
L"It is recommended that you perform a Fast Defrag.");
171 else
172 wcscat (
Text,
L"It is recommended that you perform an Extensive Defrag.");
173
174
176 {
178 (
179 Text2,
180 L"\n* A large amount of disk space (%.2f%%) is being lost "
181 L"due to a large (%u bytes) cluster size. It is recommended "
182 L"that you use a disk utility such as Partition Magic to "
183 L"reduce the cluster size of this volume.",
186 );
187
189 }
190
192
193 return;
194}
wchar_t * AddCommas(wchar_t *Result, uint64 Number)
DriveVolume & GetVolume(void)
VolumeInfo GetVolumeInfo(void)
#define IDC_DISKSIZECLUSTERS
#define IDC_DISKFREEBYTES
#define IDC_FILESSLACKBYTES
#define IDC_FILESSIZEBYTES
#define IDC_FILESSIZEONDISK
#define IDC_DISKCLUSTERSIZE
#define IDC_DISKSIZEBYTES
_CRTIMP wchar_t *__cdecl wcscpy(_Out_writes_z_(_String_length_(_Source)+1) wchar_t *_Dest, _In_z_ const wchar_t *_Source)
_CRTIMP wchar_t *__cdecl wcscat(_Inout_updates_z_(_String_length_(_Dest)+_String_length_(_Source)+1) wchar_t *_Dest, _In_z_ const wchar_t *_Source)
vector< uint32 > FraggedFiles