24 if ((VolumeEntry ==
NULL) ||
25 (VolumeEntry->pExtents ==
NULL) ||
29 for (
i = 0;
i < VolumeEntry->pExtents->NumberOfDiskExtents;
i++)
31 if (VolumeEntry->pExtents->Extents[
i].DiskNumber == DiskEntry->DiskNumber)
47 if ((VolumeEntry ==
NULL) ||
48 (VolumeEntry->pExtents ==
NULL) ||
49 (PartEntry ==
NULL) ||
50 (PartEntry->DiskEntry ==
NULL))
53 for (
i = 0;
i < VolumeEntry->pExtents->NumberOfDiskExtents;
i++)
55 if (VolumeEntry->pExtents->Extents[
i].DiskNumber == PartEntry->DiskEntry->DiskNumber)
57 if ((VolumeEntry->pExtents->Extents[
i].StartingOffset.QuadPart == PartEntry->StartSector.QuadPart * PartEntry->DiskEntry->BytesPerSector) &&
58 (VolumeEntry->pExtents->Extents[
i].ExtentLength.QuadPart == PartEntry->SectorCount.QuadPart * PartEntry->DiskEntry->BytesPerSector))
120 bPrintHeader =
FALSE;
147 DPRINT(
"DetailPartition()\n");
202 bPrintHeader =
FALSE;
212 if (bVolumeFound ==
FALSE)
230 DPRINT(
"DetailVolume()\n");
257 bPrintHeader =
FALSE;
267 if (bDiskFound ==
FALSE)
void ConPuts(FILE *fp, LPCWSTR psz)
void ConResPrintf(FILE *fp, UINT nID,...)
void ConResPuts(FILE *fp, UINT nID)
#define IDS_LIST_DISK_LINE
#define IDS_SELECT_NO_VOLUME
#define IDS_DETAIL_DISK_STATUS
#define IDS_SELECT_NO_PARTITION
#define IDS_LIST_DISK_HEAD
#define IDS_LIST_VOLUME_LINE
#define IDS_LIST_VOLUME_HEAD
#define IDS_DETAIL_PARTITION_HIDDEN
#define IDS_DETAIL_PARTITION_ACTIVE
#define IDS_DETAIL_PARTITION_TYPE
#define IDS_DETAIL_PARTITION_ATTRIBUTE
#define IDS_ERROR_INVALID_ARGS
#define IDS_DETAIL_PARTITION_REQUIRED
#define IDS_DETAIL_INFO_LUN_ID
#define IDS_DETAIL_NO_DISKS
#define IDS_DETAIL_NO_VOLUME
#define IDS_SELECT_PARTITION_NO_DISK
#define IDS_DETAIL_INFO_TARGET
#define IDS_SELECT_NO_DISK
#define IDS_DETAIL_PARTITION_OFFSET
#define IDS_DETAIL_INFO_PATH
#define IDS_DETAIL_PARTITION_NUMBER
#define IDS_DETAIL_DISK_DESCRIPTION
#define IDS_DETAIL_DISK_ID
#define IDS_DETAIL_DISK_TYPE
EXIT_CODE DetailDisk(_In_ INT argc, _In_ PWSTR *argv)
static BOOL IsDiskInVolume(_In_ PVOLENTRY VolumeEntry, _In_ PDISKENTRY DiskEntry)
EXIT_CODE DetailVolume(_In_ INT argc, _In_ PWSTR *argv)
static BOOL IsPartitionInVolume(_In_ PVOLENTRY VolumeEntry, _In_ PPARTENTRY PartEntry)
EXIT_CODE DetailPartition(_In_ INT argc, _In_ PWSTR *argv)
LIST_ENTRY VolumeListHead
enum _EXIT_CODE EXIT_CODE
VOID PrintGUID(_Out_ PWSTR pszBuffer, _In_ GUID *pGuid)
VOID PrintDisk(_In_ PDISKENTRY DiskEntry)
VOID PrintBusType(_Out_ PWSTR pszBuffer, _In_ INT cchBufferMax, _In_ STORAGE_BUS_TYPE Bustype)
VOID PrintVolume(_In_ PVOLENTRY VolumeEntry)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
base of all file and directory entries
PDRIVE_LAYOUT_INFORMATION LayoutBuffer
struct _LIST_ENTRY * Flink
ULARGE_INTEGER StartSector
#define CONTAINING_RECORD(address, type, field)
static PPARTENTRY CurrentPartition