使用裝置安裝函式
本節摘要說明 裝置安裝功能。 藉由使用裝置安裝功能,安裝軟體可以執行下列類型的作業:
安裝驅動程式
處理 DIF 程式碼。
管理裝置資訊集。
管理驅動程式清單。
管理裝置介面。
管理圖示和其他點陣圖。
下表提供下列函式類型的摘要:
驅動程式安裝函式
在系統中存在的 PnP 裝置上安裝預先安裝于 驅動程式存放區 中的指定驅動程式套件。 (Windows Vista 和更新版本的 Windows) |
|
卸載裝置,並從系統移除其裝置節點 (devnode) 。 (Windows 7 和更新版本的 Windows) |
|
在驅動程式存放區中預先安裝驅動程式套件,然後在系統中相符的 PnP 裝置上安裝驅動程式套件。 (Windows Vista 和更新版本的 Windows) |
|
從驅動程式存放區移除驅動程式套件。 (Windows 10版本 1703 和更新版本的 Windows) |
|
更新已安裝的驅動程式套件,以比對系統中存在的 PnP 裝置。 |
|
將安裝在指定裝置上的驅動程式套件復原至裝置的備份驅動程式套件集。 (Windows Vista 和更新版本的 Windows) |
裝置資訊函式
注意
Windows 的所有版本都不支援 SetupApi。 可能的話,您應該使用較低層 API,例如透過 CfgMgr32.dll取得的 API。 如需秘訣,請參閱 從 SetupApi 移植到 CfgMgr32 。
建立空 的裝置資訊集。 此集合可以與類別 GUID 相關聯。 |
|
建立空的裝置資訊集。 此集合可以與類別 GUID 相關聯,而且可以用於遠端電腦上的裝置。 |
|
建立新的裝置資訊元素,並將其新增為指定裝置資訊集的新成員。 |
|
擷取現有裝置實例的相關資訊,並將其新增至指定的裝置資訊集。 |
|
傳回裝置資訊集之裝置資訊元素的內容結構。 |
|
擷取與裝置資訊專案相關聯的裝置實例識別碼。 |
|
如果有相關聯的類別,擷取與裝置資訊集相關聯的類別 GUID。 |
|
擷取與裝置資訊集相關聯的資訊,包括類別 GUID、遠端電腦控制碼和遠端電腦名稱稱。 |
|
擷取指定裝置資訊專案的屬性工作表控制碼,或指定裝置資訊集的 裝置安裝類別 的控制碼。 |
|
傳回包含指定類別之所有裝置的裝置資訊集。 |
|
傳回裝置資訊集,其中包含本機或遠端電腦上指定類別的所有裝置。 |
|
將指定的裝置資訊專案設定為裝置資訊集目前選取的成員。 安裝精靈通常會使用此函式。 |
|
擷取指定裝置資訊集目前選取的裝置。 |
|
向隨插即用管理員註冊新建立的裝置實例。 |
|
從指定的裝置資訊集中刪除成員。 此函式不會刪除實際的裝置。 |
|
終結裝置資訊集,並釋放所有相關聯的記憶體。 |
驅動程式資訊函式
建置與指定裝置實例或裝置資訊集全域類別驅動程式清單相關聯的驅動程式清單。 |
|
列舉驅動程式資訊清單的成員。 |
|
擷取指定之驅動程式資訊專案的詳細資訊。 |
|
將驅動程式清單的指定成員設定為目前選取的驅動程式。 它也可以用來重設驅動程式清單,讓目前沒有選取的驅動程式。 |
|
擷取選取為要安裝之驅動程式的驅動程式清單成員。 |
|
取消目前在不同的執行緒中執行的驅動程式清單搜尋。 |
|
終結驅動程式資訊清單。 |
裝置安裝處理常式
使用指定的安裝要求,呼叫適當的類別安裝程式和任何已註冊的共同安裝程式。 |
|
DIF_PROPERTYCHANGE要求的預設處理常式。 它可以用來變更已安裝裝置的狀態。 |
|
為指定的裝置註冊 INF 檔案中列出的裝置特定共同安裝程式。 此函式是DIF_REGISTER_COINSTALLERS的預設處理常式。 |
|
DIF_INSTALLDEVICE要求的預設處理常式。 |
|
DIF_INSTALLDEVICEFILES要求的預設處理常式。 |
|
DIF_INSTALLINTERFACES要求的預設處理常式。 它會安裝 DDInstall中列出的介面。裝置 INF 檔案的介面 區段。 |
|
此函式已過時,無法用於任何版本的 Microsoft Windows。 |
|
DIF_REMOVEDEVICE要求的預設處理常式。 |
|
DIF_UNREMOVE要求的預設處理常式。 |
|
DIF_REGISTERDEVICE要求的預設處理常式。 |
|
DIF_SELECTDEVICE要求的預設處理常式。 |
|
DIF_SELECTBESTCOMPATDRV要求的預設處理常式。 |
|
DIF_SELECTDEVICE要求的預設處理常式。 |
裝置安裝自訂功能
擷取裝置資訊集或特定裝置資訊專案的類別安裝參數。 |
|
設定或清除裝置資訊集或特定裝置資訊專案的類別安裝參數。 |
|
擷取裝置資訊集或特定裝置資訊專案的裝置安裝參數。 |
|
設定裝置資訊集或特定裝置資訊元素的裝置安裝參數。 |
|
擷取指定驅動程式的安裝參數。 |
|
設定指定之驅動程式的安裝參數。 |
安裝程式類別函式
傳回安裝類別 GUID 的清單,其中包含安裝在系統上的每個類別。 |
|
傳回安裝類別 GUID 的清單,其中包含安裝在本機系統或遠端系統上的每個類別。 |
|
擷取與指定之安裝類別 GUID 相關聯的類別描述。 |
|
擷取安裝在本機或遠端電腦上的安裝類別描述。 |
|
擷取指定裝置 INF 檔案的類別。 |
|
擷取與指定類別名稱相關聯的 GUID。 此清單是根據系統上目前安裝的類別所建置。 |
|
擷取與指定類別名稱相關聯的 GUID。 此結果清單包含目前安裝在本機或遠端電腦上的類別。 |
|
擷取與類別 GUID 相關聯的類別名稱。 |
|
擷取與類別 GUID 相關聯的類別名稱。 類別可以安裝在本機或遠端電腦上。 |
|
安裝指定 INF 檔案的 ClassInstall32 區段。 |
|
安裝類別安裝程式或介面類別別。 |
|
開啟 裝置安裝類別 登錄機碼或 類別的特定子機碼。 |
|
開啟裝置安裝類別登錄機碼、裝置介面類別別登錄機碼或 類別的特定子機碼。 此函式會在本機電腦或遠端電腦上開啟指定的金鑰。 |
點陣圖和圖示函式
建置映射清單,其中包含每個已安裝類別的點陣圖,並傳回資料結構中的清單。 |
|
建置本機或遠端電腦上所安裝之每個類別的點陣圖影像清單。 |
|
擷取指定類別之類別影像清單中的索引。 |
|
擷取為指定類別提供的走勢圖標索引。 |
|
在要求的位置繪製指定的走勢圖標。 |
|
載入指定類別的大型和走勢圖標。 |
|
載入指定裝置的裝置圖示。 (Windows Vista 和更新版本的 Windows) |
|
終結類別影像清單。 |
裝置介面函式
注意
Windows 的所有版本都不支援 SetupApi。 可能的話,您應該使用較低層 API,例如透過 CfgMgr32.dll取得的 API。 如需秘訣,請參閱 從 SetupApi 移植到 CfgMgr32 。
(裝置介面) 註冊裝置功能。 |
|
擷取現有裝置介面的相關資訊,並將它新增至指定的裝置資訊集。 |
|
傳回指定之裝置介面的別名。 |
|
傳回包含指定類別之所有裝置的裝置資訊集。 |
|
傳回裝置資訊集,其中包含本機或遠端電腦上指定類別的所有裝置。 |
|
傳回裝置資訊集之裝置介面元素的內容結構。 每個呼叫都會傳回一個裝置介面的相關資訊。 您可以重複呼叫 函式,以取得一或多個裝置所公開之數個介面的相關資訊。 |
|
傳回特定裝置介面的詳細資料。 |
|
建立登錄子機碼來儲存裝置介面實例的相關資訊,並傳回金鑰的控制碼。 |
|
開啟應用程式和驅動程式用來儲存裝置介面實例專屬資訊的登錄子機碼,並傳回金鑰的控制碼。 |
|
刪除應用程式和驅動程式用來儲存裝置介面實例專屬資訊的登錄子機碼。 |
|
這是DIF_INSTALLINTERFACES要求的預設處理常式。 它會安裝 DDInstall中列出的介面。裝置 INF 檔案的介面 區段。 |
|
從系統移除已註冊的裝置介面。 |
|
從裝置資訊集刪除裝置介面。 |
|
將指定的裝置介面設定為裝置類別的預設介面。 |
|
安裝類別安裝程式或介面類別別。 |
|
開啟 裝置安裝類別 登錄機碼、裝置介面類別別登錄機碼或 類別的特定子機碼。 此函式會在本機電腦或遠端電腦上開啟指定的金鑰。 |
裝置屬性函式 (Windows Vista 和更新版本)
注意
Windows 的所有版本都不支援 SetupApi。 可能的話,您應該使用較低層 API,例如透過 CfgMgr32.dll取得的 API。 如需秘訣,請參閱 從 SetupApi 移植到 CfgMgr32 。
擷取針對裝置安裝類別或裝置介面類別別所設定的裝置屬性。 |
|
擷取本機或遠端電腦上裝置安裝類別或裝置介面類別別的類別屬性。 |
|
擷取裝置屬性索引鍵的陣列,這些索引鍵代表針對裝置設定類別或裝置介面類別別所設定的裝置屬性。 |
|
擷取裝置屬性索引鍵的陣列,代表針對裝置安裝類別或本機或遠端電腦上的裝置介面類別別所設定的裝置屬性。 |
|
擷取為裝置介面設定的裝置屬性。 |
|
擷取代表裝置介面所設定之裝置屬性的裝置屬性索引鍵陣列。 |
|
擷取裝置實例屬性。 |
|
擷取裝置屬性索引鍵的陣列,這些索引鍵代表為裝置實例設定的裝置屬性。 |
|
設定裝置安裝類別或裝置介面類別別的類別屬性。 |
|
設定本機或遠端電腦上的裝置安裝類別或裝置介面類別別的裝置屬性。 |
|
設定裝置介面的裝置屬性。 |
|
設定裝置實例屬性。 |
登錄函式
注意
Windows 的所有版本都不支援 SetupApi。 可能的話,您應該使用較低層 API,例如透過 CfgMgr32.dll取得的 API。 如需秘訣,請參閱 從 SetupApi 移植到 CfgMgr32 。
建立裝置特定組態資訊的登錄儲存機碼,並傳回金鑰的控制碼。 |
|
開啟裝置特定組態資訊的登錄儲存機碼,並傳回金鑰的控制碼。 |
|
刪除與裝置資訊專案相關聯的指定使用者可存取登錄機碼 () 。 |
|
開啟安裝程式類別登錄機碼或 類別的特定子機碼。 |
|
開啟裝置安裝類別登錄機碼、裝置介面類別別登錄機碼或 類別的特定子機碼。 此函式會在本機電腦或遠端電腦上開啟指定的金鑰。 |
|
建立非volatile 登錄子機碼,以儲存裝置介面實例的相關資訊,並傳回金鑰的控制碼。 |
|
開啟應用程式和驅動程式用來儲存裝置介面實例專屬資訊的登錄子機碼,並傳回金鑰的控制碼。 |
|
刪除應用程式和驅動程式用來儲存裝置介面實例專屬資訊的登錄子機碼。 |
|
設定指定的隨插即用裝置屬性。 |
|
擷取指定的隨插即用裝置屬性。 |
|
從登錄擷取指定的裝置類別屬性。 |
|
在登錄中設定指定的裝置類別屬性。 |
其他函式
擷取從裝置 INF 檔案安裝裝置時要使用的適當裝飾 INF 模型區段 。 |
|
擷取從裝置 INF 檔案安裝裝置時要使用的適當 DDInstall 區段。 |
|
擷取 INF DDInstall 區段的名稱,該區段會針對指定的作業系統和處理器架構安裝裝置。 |
|
擷取與硬體設定檔識別碼相關聯的易記名稱。 |
|
擷取與本機或遠端電腦上硬體設定檔識別碼相關聯的易記名稱。 |
|
擷取所有目前定義的硬體設定檔識別碼清單。 |
|
擷取本機或遠端電腦上所有目前定義的硬體設定檔識別碼清單。 |
|
重新開機指定的裝置,或視需要啟動所有由相同函式運作的裝置,並篩選驅動程式與指定的裝置。 |