+/***********************************************************************
+* SetupQuerySpaceRequiredOnDriveA (SETUPAPI.@)
+*/
+BOOL WINAPI SetupQuerySpaceRequiredOnDriveA(HDSKSPC DiskSpace,
+ LPCSTR DriveSpec, LONGLONG *SpaceRequired,
+ PVOID Reserved1, UINT Reserved2)
+{
+ DWORD len;
+ LPWSTR DriveSpecW;
+ BOOL ret;
+
+ /* The parameter validation checks are in a different order from the
+ * Unicode variant of SetupQuerySpaceRequiredOnDrive. */
+ if (!DriveSpec)
+ {
+ SetLastError(ERROR_INVALID_PARAMETER);
+ return FALSE;
+ }
+
+ if (!DiskSpace)
+ {
+ SetLastError(ERROR_INVALID_HANDLE);
+ return FALSE;
+ }
+
+ len = MultiByteToWideChar(CP_ACP, 0, DriveSpec, -1, NULL, 0);
+
+ DriveSpecW = HeapAlloc(GetProcessHeap(), 0, len * sizeof(WCHAR));
+ if (!DriveSpecW)
+ {
+ SetLastError(ERROR_NOT_ENOUGH_MEMORY);
+ return FALSE;
+ }
+
+ MultiByteToWideChar(CP_ACP, 0, DriveSpec, -1, DriveSpecW, len);
+
+ ret = SetupQuerySpaceRequiredOnDriveW(DiskSpace, DriveSpecW, SpaceRequired,
+ Reserved1, Reserved2);
+
+ HeapFree(GetProcessHeap(), 0, DriveSpecW);
+
+ return ret;
+}
+