int CALLBACK CShellBrowser::SortByTotalSize(int InternalIndex1,int InternalIndex2,bool TotalSize) const { ULARGE_INTEGER DriveSpace1; BOOL Res1 = GetDriveSpaceColumnRawData(InternalIndex1,TotalSize,DriveSpace1); ULARGE_INTEGER DriveSpace2; BOOL Res2 = GetDriveSpaceColumnRawData(InternalIndex2,TotalSize,DriveSpace2); if(Res1 && !Res2) { return 1; } else if(!Res1 && Res2) { return -1; } else if(!Res1 && !Res2) { return 0; } if(DriveSpace1.QuadPart > DriveSpace2.QuadPart) { return 1; } else if(DriveSpace1.QuadPart < DriveSpace2.QuadPart) { return -1; } return 0; }
int CALLBACK CShellBrowser::SortByTotalSize(const BasicItemInfo_t &itemInfo1, const BasicItemInfo_t &itemInfo2, bool TotalSize) const { ULARGE_INTEGER DriveSpace1; BOOL Res1 = GetDriveSpaceColumnRawData(itemInfo1,TotalSize,DriveSpace1); ULARGE_INTEGER DriveSpace2; BOOL Res2 = GetDriveSpaceColumnRawData(itemInfo2,TotalSize,DriveSpace2); if(Res1 && !Res2) { return 1; } else if(!Res1 && Res2) { return -1; } else if(!Res1 && !Res2) { return 0; } if(DriveSpace1.QuadPart > DriveSpace2.QuadPart) { return 1; } else if(DriveSpace1.QuadPart < DriveSpace2.QuadPart) { return -1; } return 0; }