ReactOS  0.4.15-dev-1070-ge1a01de
drvdefext.cpp File Reference
#include "precomp.h"
#include <math.h>
#include <ndk/iofuncs.h>
#include <ndk/obfuncs.h>
Include dependency graph for drvdefext.cpp:

Go to the source code of this file.

Macros

#define _USE_MATH_DEFINES
 
#define NTOS_MODE_USER
 

Typedefs

typedef enum HWPAGE_DISPLAYMODEPHWPAGE_DISPLAYMODE
 

Enumerations

enum  HWPAGE_DISPLAYMODE {
  HWPD_STANDARDLIST = 0, HWPD_LARGELIST, HWPD_MAX = HWPD_LARGELIST, HWPD_STANDARDLIST = 0,
  HWPD_LARGELIST, HWPD_MAX = HWPD_LARGELIST, HWPD_STANDARDLIST = 0, HWPD_LARGELIST,
  HWPD_MAX = HWPD_LARGELIST, HWPD_STANDARDLIST = 0, HWPD_LARGELIST, HWPD_MAX = HWPD_LARGELIST
}
 

Functions

 WINE_DEFAULT_DEBUG_CHANNEL (shell)
 
EXTERN_C HWND WINAPI DeviceCreateHardwarePageEx (HWND hWndParent, LPGUID lpGuids, UINT uNumberOfGuids, HWPAGE_DISPLAYMODE DisplayMode)
 
UINT SH_FormatByteSize (LONGLONG cbSize, LPWSTR pwszResult, UINT cchResultMax)
 
static VOID GetDriveNameWithLetter (LPWSTR pwszText, UINT cchTextMax, LPCWSTR pwszDrive)
 
static VOID InitializeChkDskDialog (HWND hwndDlg, LPCWSTR pwszDrive)
 
static BOOLEAN NTAPI ChkdskCallback (IN CALLBACKCOMMAND Command, IN ULONG SubAction, IN PVOID ActionInfo)
 
static VOID ChkDskNow (HWND hwndDlg, LPCWSTR pwszDrive)
 
static INT_PTR CALLBACK ChkDskDlg (HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
 
static BOOL GetDriveTypeAndCharacteristics (HANDLE hDevice, DEVICE_TYPE *pDeviceType, ULONG *pCharacteristics)
 
BOOL IsDriveFloppyW (LPCWSTR pszDriveRoot)
 
BOOL IsDriveFloppyA (LPCSTR pszDriveRoot)
 

Variables

static const GUID GUID_DEVCLASS_DISKDRIVE = {0x4d36e967L, 0xe325, 0x11ce, {0xbf, 0xc1, 0x08, 0x00, 0x2b, 0xe1, 0x03, 0x18}}
 
static HWND hChkdskDrvDialog = NULL
 
static BOOLEAN bChkdskSuccess = FALSE
 

Macro Definition Documentation

◆ _USE_MATH_DEFINES

#define _USE_MATH_DEFINES

Definition at line 25 of file drvdefext.cpp.

◆ NTOS_MODE_USER

#define NTOS_MODE_USER

Definition at line 28 of file drvdefext.cpp.

Typedef Documentation

◆ PHWPAGE_DISPLAYMODE

Enumeration Type Documentation

◆ HWPAGE_DISPLAYMODE

Enumerator
HWPD_STANDARDLIST 
HWPD_LARGELIST 
HWPD_MAX 
HWPD_STANDARDLIST 
HWPD_LARGELIST 
HWPD_MAX 
HWPD_STANDARDLIST 
HWPD_LARGELIST 
HWPD_MAX 
HWPD_STANDARDLIST 
HWPD_LARGELIST 
HWPD_MAX 

Definition at line 36 of file drvdefext.cpp.

37 {
enum HWPAGE_DISPLAYMODE * PHWPAGE_DISPLAYMODE
HWPAGE_DISPLAYMODE
Definition: drvdefext.cpp:36

Function Documentation

◆ ChkdskCallback()

static BOOLEAN NTAPI ChkdskCallback ( IN CALLBACKCOMMAND  Command,
IN ULONG  SubAction,
IN PVOID  ActionInfo 
)
static

Definition at line 86 of file drvdefext.cpp.

90 {
91  PDWORD Progress;
92  PBOOLEAN pSuccess;
93  switch(Command)
94  {
95  case PROGRESS:
96  Progress = (PDWORD)ActionInfo;
97  SendDlgItemMessageW(hChkdskDrvDialog, 14002, PBM_SETPOS, (WPARAM)*Progress, 0);
98  break;
99  case DONE:
100  pSuccess = (PBOOLEAN)ActionInfo;
101  bChkdskSuccess = (*pSuccess);
102  break;
103 
104  case VOLUMEINUSE:
105  case INSUFFICIENTRIGHTS:
106  case FSNOTSUPPORTED:
107  case CLUSTERSIZETOOSMALL:
109  FIXME("\n");
110  break;
111 
112  default:
113  break;
114  }
115 
116  return TRUE;
117 }
#define TRUE
Definition: types.h:120
Definition: fmifs.h:68
#define PBM_SETPOS
Definition: commctrl.h:2180
UINT_PTR WPARAM
Definition: windef.h:207
Definition: shell.h:41
#define FALSE
Definition: types.h:117
static BOOLEAN bChkdskSuccess
Definition: drvdefext.cpp:83
#define FIXME(fmt,...)
Definition: debug.h:111
LRESULT WINAPI SendDlgItemMessageW(_In_ HWND, _In_ int, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
char * PBOOLEAN
Definition: retypes.h:11
DWORD * PDWORD
Definition: pedump.c:68
static HWND hChkdskDrvDialog
Definition: drvdefext.cpp:82
#define DONE
Definition: rnr20lib.h:14

Referenced by ChkDskNow().

◆ ChkDskDlg()

static INT_PTR CALLBACK ChkDskDlg ( HWND  hwndDlg,
UINT  uMsg,
WPARAM  wParam,
LPARAM  lParam 
)
static

Definition at line 161 of file drvdefext.cpp.

166 {
167  switch(uMsg)
168  {
169  case WM_INITDIALOG:
172  return TRUE;
173  case WM_COMMAND:
174  switch(LOWORD(wParam))
175  {
176  case IDCANCEL:
177  EndDialog(hwndDlg, 0);
178  break;
179  case IDOK:
180  {
181  LPCWSTR pwszDrive = (LPCWSTR)GetWindowLongPtr(hwndDlg, DWLP_USER);
182  ChkDskNow(hwndDlg, pwszDrive);
183  break;
184  }
185  }
186  break;
187  }
188 
189  return FALSE;
190 }
#define IDOK
Definition: winuser.h:824
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185
#define TRUE
Definition: types.h:120
#define SetWindowLongPtr
Definition: treelist.c:70
BOOL WINAPI EndDialog(_In_ HWND, _In_ INT_PTR)
WPARAM wParam
Definition: combotst.c:138
#define FALSE
Definition: types.h:117
static VOID ChkDskNow(HWND hwndDlg, LPCWSTR pwszDrive)
Definition: drvdefext.cpp:120
static VOID InitializeChkDskDialog(HWND hwndDlg, LPCWSTR pwszDrive)
Definition: drvdefext.cpp:70
#define DWLP_USER
Definition: winuser.h:866
#define WM_COMMAND
Definition: winuser.h:1722
__int3264 LONG_PTR
Definition: mstsclib_h.h:276
#define GetWindowLongPtr
Definition: treelist.c:73
#define IDCANCEL
Definition: winuser.h:825
#define WM_INITDIALOG
Definition: winuser.h:1721
LPARAM lParam
Definition: combotst.c:139
#define LOWORD(l)
Definition: pedump.c:82

Referenced by CDrvDefExt::ExtraPageProc().

◆ ChkDskNow()

static VOID ChkDskNow ( HWND  hwndDlg,
LPCWSTR  pwszDrive 
)
static

Definition at line 120 of file drvdefext.cpp.

121 {
122  //DWORD ClusterSize = 0;
123  WCHAR wszFs[30];
124  ULARGE_INTEGER TotalNumberOfFreeBytes, FreeBytesAvailableUser;
125  BOOLEAN bCorrectErrors = FALSE, bScanDrive = FALSE;
126 
127  if(!GetVolumeInformationW(pwszDrive, NULL, 0, NULL, NULL, NULL, wszFs, _countof(wszFs)))
128  {
129  FIXME("failed to get drive fs type\n");
130  return;
131  }
132 
133  if (!GetDiskFreeSpaceExW(pwszDrive, &FreeBytesAvailableUser, &TotalNumberOfFreeBytes, NULL))
134  {
135  FIXME("failed to get drive space type\n");
136  return;
137  }
138 
139  /*if (!GetDefaultClusterSize(wszFs, &ClusterSize, &TotalNumberOfFreeBytes))
140  {
141  FIXME("invalid cluster size\n");
142  return;
143  }*/
144 
145  if (SendDlgItemMessageW(hwndDlg, 14000, BM_GETCHECK, 0, 0) == BST_CHECKED)
146  bCorrectErrors = TRUE;
147 
148  if (SendDlgItemMessageW(hwndDlg, 14001, BM_GETCHECK, 0, 0) == BST_CHECKED)
149  bScanDrive = TRUE;
150 
151  hChkdskDrvDialog = hwndDlg;
153  SendDlgItemMessageW(hwndDlg, 14002, PBM_SETRANGE, 0, MAKELPARAM(0, 100));
154  Chkdsk((LPWSTR)pwszDrive, (LPWSTR)wszFs, bCorrectErrors, TRUE, FALSE, bScanDrive, NULL, NULL, ChkdskCallback); // FIXME: casts
155 
158 }
static BOOLEAN NTAPI ChkdskCallback(IN CALLBACKCOMMAND Command, IN ULONG SubAction, IN PVOID ActionInfo)
Definition: drvdefext.cpp:86
#define TRUE
Definition: types.h:120
#define MAKELPARAM(l, h)
Definition: winuser.h:3983
#define PBM_SETRANGE
Definition: commctrl.h:2179
#define FALSE
Definition: types.h:117
static BOOLEAN bChkdskSuccess
Definition: drvdefext.cpp:83
#define FIXME(fmt,...)
Definition: debug.h:111
unsigned char BOOLEAN
smooth NULL
Definition: ftsmooth.c:416
#define BM_GETCHECK
Definition: winuser.h:1900
__wchar_t WCHAR
Definition: xmlstorage.h:180
#define _countof(array)
Definition: sndvol32.h:68
LRESULT WINAPI SendDlgItemMessageW(_In_ HWND, _In_ int, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
BOOL WINAPI GetVolumeInformationW(IN LPCWSTR lpRootPathName, IN LPWSTR lpVolumeNameBuffer, IN DWORD nVolumeNameSize, OUT LPDWORD lpVolumeSerialNumber OPTIONAL, OUT LPDWORD lpMaximumComponentLength OPTIONAL, OUT LPDWORD lpFileSystemFlags OPTIONAL, OUT LPWSTR lpFileSystemNameBuffer OPTIONAL, IN DWORD nFileSystemNameSize)
Definition: volume.c:226
VOID NTAPI Chkdsk(IN PWCHAR DriveRoot, IN PWCHAR Format, IN BOOLEAN CorrectErrors, IN BOOLEAN Verbose, IN BOOLEAN CheckOnlyIfDirty, IN BOOLEAN ScanDrive, IN PVOID Unused2, IN PVOID Unused3, IN PFMIFSCALLBACK Callback)
Definition: chkdsk.c:18
static HWND hChkdskDrvDialog
Definition: drvdefext.cpp:82
#define BST_CHECKED
Definition: winuser.h:197
WCHAR * LPWSTR
Definition: xmlstorage.h:184
BOOL WINAPI GetDiskFreeSpaceExW(IN LPCWSTR lpDirectoryName OPTIONAL, OUT PULARGE_INTEGER lpFreeBytesAvailableToCaller, OUT PULARGE_INTEGER lpTotalNumberOfBytes, OUT PULARGE_INTEGER lpTotalNumberOfFreeBytes)
Definition: disk.c:342

Referenced by ChkDskDlg().

◆ DeviceCreateHardwarePageEx()

EXTERN_C HWND WINAPI DeviceCreateHardwarePageEx ( HWND  hWndParent,
LPGUID  lpGuids,
UINT  uNumberOfGuids,
HWPAGE_DISPLAYMODE  DisplayMode 
)

◆ GetDriveNameWithLetter()

static VOID GetDriveNameWithLetter ( LPWSTR  pwszText,
UINT  cchTextMax,
LPCWSTR  pwszDrive 
)
static

Definition at line 51 of file drvdefext.cpp.

52 {
53  DWORD dwMaxComp, dwFileSys;
54  SIZE_T cchText = 0;
55 
56  if (GetVolumeInformationW(pwszDrive, pwszText, cchTextMax, NULL, &dwMaxComp, &dwFileSys, NULL, 0))
57  {
58  cchText = wcslen(pwszText);
59  if (cchText == 0)
60  {
61  /* load default volume label */
62  cchText = LoadStringW(shell32_hInstance, IDS_DRIVE_FIXED, pwszText, cchTextMax);
63  }
64  }
65 
66  StringCchPrintfW(pwszText + cchText, cchTextMax - cchText, L" (%c:)", pwszDrive[0]);
67 }
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
smooth NULL
Definition: ftsmooth.c:416
_In_ int cchText
Definition: winuser.h:4440
#define IDS_DRIVE_FIXED
Definition: shresdef.h:105
unsigned long DWORD
Definition: ntddk_ex.h:95
static const WCHAR L[]
Definition: oid.c:1250
BOOL WINAPI GetVolumeInformationW(IN LPCWSTR lpRootPathName, IN LPWSTR lpVolumeNameBuffer, IN DWORD nVolumeNameSize, OUT LPDWORD lpVolumeSerialNumber OPTIONAL, OUT LPDWORD lpMaximumComponentLength OPTIONAL, OUT LPDWORD lpFileSystemFlags OPTIONAL, OUT LPWSTR lpFileSystemNameBuffer OPTIONAL, IN DWORD nFileSystemNameSize)
Definition: volume.c:226
ULONG_PTR SIZE_T
Definition: typedefs.h:80
#define shell32_hInstance
STRSAFEAPI StringCchPrintfW(STRSAFE_LPWSTR pszDest, size_t cchDest, STRSAFE_LPCWSTR pszFormat,...)
Definition: strsafe.h:530
size_t __cdecl wcslen(_In_z_ const wchar_t *_Str)

Referenced by InitializeChkDskDialog().

◆ GetDriveTypeAndCharacteristics()

static BOOL GetDriveTypeAndCharacteristics ( HANDLE  hDevice,
DEVICE_TYPE pDeviceType,
ULONG pCharacteristics 
)
static

Definition at line 288 of file drvdefext.cpp.

289 {
293 
295  &DeviceInfo, sizeof(DeviceInfo),
297  if (Status == NO_ERROR)
298  {
299  *pDeviceType = DeviceInfo.DeviceType;
300  *pCharacteristics = DeviceInfo.Characteristics;
301  return TRUE;
302  }
303 
304  return FALSE;
305 }
#define TRUE
Definition: types.h:120
LONG NTSTATUS
Definition: precomp.h:26
#define NO_ERROR
Definition: dderror.h:5
#define FALSE
Definition: types.h:117
struct _DeviceInfo DeviceInfo
Status
Definition: gdiplustypes.h:24
NTSTATUS NTAPI NtQueryVolumeInformationFile(HANDLE FileHandle, PIO_STATUS_BLOCK IoStatusBlock, PVOID FsInformation, ULONG Length, FS_INFORMATION_CLASS FsInformationClass)
static OUT PIO_STATUS_BLOCK IoStatusBlock
Definition: pipe.c:75

Referenced by IsDriveFloppyW().

◆ InitializeChkDskDialog()

static VOID InitializeChkDskDialog ( HWND  hwndDlg,
LPCWSTR  pwszDrive 
)
static

Definition at line 70 of file drvdefext.cpp.

71 {
72  WCHAR wszText[100];
73  UINT Length;
74  SetWindowLongPtr(hwndDlg, DWLP_USER, (INT_PTR)pwszDrive);
75 
76  Length = GetWindowTextW(hwndDlg, wszText, sizeof(wszText) / sizeof(WCHAR));
77  wszText[Length] = L' ';
78  GetDriveNameWithLetter(&wszText[Length + 1], (sizeof(wszText) / sizeof(WCHAR)) - Length - 1, pwszDrive);
79  SetWindowText(hwndDlg, wszText);
80 }
int32_t INT_PTR
Definition: typedefs.h:64
#define SetWindowLongPtr
Definition: treelist.c:70
__wchar_t WCHAR
Definition: xmlstorage.h:180
_In_ ULONG _In_ ULONG _In_ ULONG Length
Definition: ntddpcm.h:101
static const WCHAR L[]
Definition: oid.c:1250
#define DWLP_USER
Definition: winuser.h:866
static VOID GetDriveNameWithLetter(LPWSTR pwszText, UINT cchTextMax, LPCWSTR pwszDrive)
Definition: drvdefext.cpp:51
int WINAPI GetWindowTextW(HWND hWnd, LPWSTR lpString, int nMaxCount)
Definition: window.c:1412
#define SetWindowText
Definition: winuser.h:5832
unsigned int UINT
Definition: ndis.h:50

Referenced by ChkDskDlg().

◆ IsDriveFloppyA()

BOOL IsDriveFloppyA ( LPCSTR  pszDriveRoot)

Definition at line 373 of file drvdefext.cpp.

374 {
375  WCHAR szRoot[8];
376  MultiByteToWideChar(CP_ACP, 0, pszDriveRoot, -1, szRoot, _countof(szRoot));
377  return IsDriveFloppyW(szRoot);
378 }
#define CP_ACP
Definition: compat.h:109
__wchar_t WCHAR
Definition: xmlstorage.h:180
#define _countof(array)
Definition: sndvol32.h:68
#define MultiByteToWideChar
Definition: compat.h:110
BOOL IsDriveFloppyW(LPCWSTR pszDriveRoot)
Definition: drvdefext.cpp:307

Referenced by CDrivesExtractIcon_CreateInstance(), and CDrivesFolder::GetDetailsOf().

◆ IsDriveFloppyW()

BOOL IsDriveFloppyW ( LPCWSTR  pszDriveRoot)

Definition at line 307 of file drvdefext.cpp.

308 {
309  LPCWSTR RootPath = pszDriveRoot;
310  WCHAR szRoot[16], szDeviceName[16];
311  UINT uType;
312  HANDLE hDevice;
314  ULONG ulCharacteristics;
315  BOOL ret;
316 
317  lstrcpynW(szRoot, RootPath, _countof(szRoot));
318 
319  if (L'a' <= szRoot[0] && szRoot[0] <= 'z')
320  {
321  szRoot[0] += ('A' - 'a');
322  }
323 
324  if ('A' <= szRoot[0] && szRoot[0] <= L'Z' &&
325  szRoot[1] == L':' && szRoot[2] == 0)
326  {
327  // 'C:' --> 'C:\'
328  szRoot[2] = L'\\';
329  szRoot[3] = 0;
330  }
331 
332  if (!PathIsRootW(szRoot))
333  {
334  return FALSE;
335  }
336 
337  uType = GetDriveTypeW(szRoot);
338  if (uType == DRIVE_REMOVABLE)
339  {
340  if (szRoot[0] == L'A' || szRoot[0] == L'B')
341  return TRUE;
342  }
343  else
344  {
345  return FALSE;
346  }
347 
349  szDeviceName[4] = szRoot[0];
350  szDeviceName[5] = L':';
352 
355  NULL, OPEN_EXISTING, 0, NULL);
356  if (hDevice == INVALID_HANDLE_VALUE)
357  {
358  return FALSE;
359  }
360 
361  ret = FALSE;
362  if (GetDriveTypeAndCharacteristics(hDevice, &DeviceType, &ulCharacteristics))
363  {
364  if ((ulCharacteristics & FILE_FLOPPY_DISKETTE) == FILE_FLOPPY_DISKETTE)
365  ret = TRUE;
366  }
367 
368  CloseHandle(hDevice);
369 
370  return ret;
371 }
#define CloseHandle
Definition: compat.h:487
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185
#define TRUE
Definition: types.h:120
DeviceType
Definition: mmdrv.h:41
#define INVALID_HANDLE_VALUE
Definition: compat.h:479
#define FILE_SHARE_WRITE
Definition: nt_native.h:681
#define FILE_SHARE_READ
Definition: compat.h:136
#define DRIVE_REMOVABLE
Definition: winbase.h:248
#define lstrcpynW
Definition: compat.h:486
#define FALSE
Definition: types.h:117
#define UNICODE_NULL
unsigned int BOOL
Definition: ntddk_ex.h:94
smooth NULL
Definition: ftsmooth.c:416
#define OPEN_EXISTING
Definition: compat.h:523
BOOL WINAPI PathIsRootW(LPCWSTR lpszPath)
Definition: path.c:1621
__wchar_t WCHAR
Definition: xmlstorage.h:180
#define _countof(array)
Definition: sndvol32.h:68
#define FILE_READ_ATTRIBUTES
Definition: nt_native.h:647
static BOOL GetDriveTypeAndCharacteristics(HANDLE hDevice, DEVICE_TYPE *pDeviceType, ULONG *pCharacteristics)
Definition: drvdefext.cpp:288
int ret
static const WCHAR L[]
Definition: oid.c:1250
static const WCHAR szDeviceName[]
Definition: provider.c:56
UINT WINAPI GetDriveTypeW(IN LPCWSTR lpRootPathName)
Definition: disk.c:497
#define DEVICE_TYPE
Definition: guid.c:10
unsigned int UINT
Definition: ndis.h:50
#define CreateFileW
Definition: compat.h:489
unsigned int ULONG
Definition: retypes.h:1
#define FILE_FLOPPY_DISKETTE
Definition: nt_native.h:809

Referenced by CDrvDefExt::InitGeneralPage(), and IsDriveFloppyA().

◆ SH_FormatByteSize()

UINT SH_FormatByteSize ( LONGLONG  cbSize,
LPWSTR  pwszResult,
UINT  cchResultMax 
)

Definition at line 236 of file filedefext.cpp.

237 {
238  /* Write formated bytes count */
239  INT cchWritten = SH_FormatInteger(cbSize, pwszResult, cchResultMax);
240  if (!cchWritten)
241  return 0;
242 
243  /* Copy " bytes" to buffer */
244  LPWSTR pwszEnd = pwszResult + cchWritten;
245  size_t cchRemaining = cchResultMax - cchWritten;
246  StringCchCopyExW(pwszEnd, cchRemaining, L" ", &pwszEnd, &cchRemaining, 0);
247  cchWritten = LoadStringW(shell32_hInstance, IDS_BYTES_FORMAT, pwszEnd, cchRemaining);
248  cchRemaining -= cchWritten;
249 
250  return cchResultMax - cchRemaining;
251 }
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
int32_t INT
Definition: typedefs.h:58
#define IDS_BYTES_FORMAT
Definition: resource.h:110
UINT SH_FormatInteger(LONGLONG Num, LPWSTR pwszResult, UINT cchResultMax)
Definition: filedefext.cpp:180
static const WCHAR L[]
Definition: oid.c:1250
STRSAFEAPI StringCchCopyExW(STRSAFE_LPWSTR pszDest, size_t cchDest, STRSAFE_LPCWSTR pszSrc, STRSAFE_LPWSTR *ppszDestEnd, size_t *pcchRemaining, STRSAFE_DWORD dwFlags)
Definition: strsafe.h:184
#define shell32_hInstance
WCHAR * LPWSTR
Definition: xmlstorage.h:184

Referenced by CDrvDefExt::InitGeneralPage(), and SH_FormatFileSizeWithBytes().

◆ WINE_DEFAULT_DEBUG_CHANNEL()

WINE_DEFAULT_DEBUG_CHANNEL ( shell  )

Variable Documentation

◆ bChkdskSuccess

BOOLEAN bChkdskSuccess = FALSE
static

Definition at line 83 of file drvdefext.cpp.

Referenced by ChkdskCallback(), and ChkDskNow().

◆ GUID_DEVCLASS_DISKDRIVE

const GUID GUID_DEVCLASS_DISKDRIVE = {0x4d36e967L, 0xe325, 0x11ce, {0xbf, 0xc1, 0x08, 0x00, 0x2b, 0xe1, 0x03, 0x18}}
static

Definition at line 34 of file drvdefext.cpp.

Referenced by DisplayStuffUsingWin32Setup(), and CDrvDefExt::HardwarePageProc().

◆ hChkdskDrvDialog

HWND hChkdskDrvDialog = NULL
static

Definition at line 82 of file drvdefext.cpp.

Referenced by ChkdskCallback(), and ChkDskNow().