Ejemplo n.º 1
0
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;
}
Ejemplo n.º 2
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;
}