共用方式為


SetupQuerySpaceRequiredOnDriveW 函式 (setupapi.h)

[此函式可用於需求一節所指出的作業系統。 後續版本可能會變更或無法使用。 安裝程式API 不應該再用於安裝應用程式。 請改用 Windows Installer 來開發應用程式安裝程式。 SetupAPI 會繼續用於安裝設備驅動器。]

SetupQuerySpaceRequiredOnDrive 函式會檢查磁碟空間清單,以判斷執行特定磁碟驅動器所列所有檔案作業所需的空間。

語法

WINSETUPAPI BOOL SetupQuerySpaceRequiredOnDriveW(
  [in]  HDSKSPC  DiskSpace,
  [in]  PCWSTR   DriveSpec,
  [out] LONGLONG *SpaceRequired,
  [in]  PVOID    Reserved1,
  [in]  UINT     Reserved2
);

參數

[in] DiskSpace

磁碟空間清單的句柄。

[in] DriveSpec

Null 終止字串的指標,指定要傳回空間資訊的磁碟驅動器。

這應該是格式為 “x:” 或 “\server\share”。

[out] SpaceRequired

如果函式成功,此參數會收到處理磁碟驅動器 磁碟驅動器 指定之磁碟空間清單中所列之所有檔案作業所需的額外空間量。

SetupQuerySpaceRequiredOnDrive 函式會檢查目標磁碟驅動器上檔案的預先存在版本,以計算目標磁碟驅動器上所需的額外空間。

例如,如果檔案作業將 2000 位元組檔案FIRST.EXE複製到目錄 C:\MYPROG,則 SetupQuerySpaceRequiredOnDrive 函式會自動檢查該目錄中該檔案的預先存在版本。 如果 C:\MYPROG\FIRST.EXE的檔案大小為 500 個字節,該作業的磁碟驅動器 C 所需的額外空間是 1500 個字節。

如果不需要額外的空間,或目標磁碟驅動器上釋放空格,所收到的值可以是0(零)或負數。

如果上述範例中的FIRST.EXE正從磁碟驅動器 C 中刪除,則所需的空間量為 2000 個字節,或磁碟驅動器 C 上釋放的空間。

如果預先存在的版本檔案大小為 5000 個字節,則以 2000 位元組取代它所需的磁碟空間為 3000 個字節FIRST.EXE。

檔案大小會四捨五入為磁碟叢集界限。

[in] Reserved1

保留;必須是 0 (零)。

[in] Reserved2

保留;必須是 0 (零)。

傳回值

如果函式成功,傳回值是非零值,SpaceRequired 會接收目前磁碟空間清單中所列的檔案作業所需的空間量。

如果函式失敗,則傳回值為 0 (零)。 若要取得擴充的錯誤資訊,請呼叫 GetLastError

傳回碼 描述
ERROR_INVALID_DRIVE
指定的磁碟驅動器不在磁碟空間清單中。
ERROR_INVALID_HANDLE
指定的 DiskSpace 句柄無效。
ERROR_INVALID_PARAMETER
指定的 DriveSpec 字串無效。

言論

注意

setupapi.h 標頭會根據 UNICODE 預處理器常數的定義,將 SetupQuerySpaceRequiredOnDrive 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的 慣例。

要求

要求 價值
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
支援的最低伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平臺 窗戶
標頭 setupapi.h
連結庫 Setupapi.lib
DLL Setupapi.dll

另請參閱

函式

概觀

SetupQueryDrivesInDiskSpaceList