退出宣告磁片區層級持續性
當您重新開機電腦時,預設會維護磁片區層級設定。 此預設系統行為稱為磁片 區持續性。 如果您不想在電腦重新開機後讓系統維護音量層級,您可以在安裝音訊配接器時使用 INF 檔案,退出宣告預設系統行為。
如果您的驅動程式有自己的登錄快取,並在驅動程式負載上設定硬體本身的層級,您可能想要退出宣告磁片區持續性。
若要選擇不使用 INF 檔案的磁片區持續性,請使用 AddProperty 登錄指示詞將PKEY_AudioDevice_DontPersistControls登錄機碼的值設定為 「1」。 預設值為 「0」。
下列 INF 檔案片段示範如何退出磁片區持續性:
;; INF file fragment to show how to use AddProperty
;; to opt out of volume persistence
;;
[Version]
...
Class = MEDIA
ClassGUID = {4d36e96c-e325-11ce-bfc1-08002be10318}
...
[Manufacturer]
%MfgName% = CompanyName,NTamd64
...
[CompanyName.NTamd64]
%DeviceDescription% = HdAudModel, hw-id
;; ... other device models listed here
[HdAudModel]
Include=ks.inf, wdmaudio.inf
Needs=KS.Registration, WDMAUDIO.Registration
CopyFiles = HdAudModel.CopyList, HdAudProp.CopyList, HdAudShortCut.CopyList
AddReg = HdAudModel.AddReg, HdAudProp.AddReg, HdAudShortCut.AddReg, HdAudBranding.AddReg
AddProperty = HdAudModel.AddProperty
...
[HdAudModel.AddProperty]
;; {F3E80BEF-1723-4FF2-BCC4-7F83DC5E46D4},2,7,,0
{F3E80BEF-1723-4FF2-BCC4-7F83DC5E46D4},2,7,,1
...
[Strings]
MfgName = "My Company Name Inc"
DeviceDescription = "My WDM device driver"
注意 上述 INF 檔案片段只會顯示 Version 區段和 與 AddProperty 指示詞相關的區段。
[製造商] 區段中的%LinuxName% = CompanyName行專案會參考提供音訊配接器之型號和硬體識別碼 (hw 識別碼) 的CompanyName區段。 INF 檔案中的這個區段,其中提供 model 和 hw-id 資訊,稱為 models 區段。 區段的實際標題是使用者定義的,在上述範例中為 CompanyName。 如需 INF 檔案之 models 區段的詳細資訊,請參閱 INF 模型一節。
接著,models 區段會參考設備磁碟機安裝 (DDInstall) 區段,其中會提供安裝程式必須複製之其他 INF 檔案的相關資訊。 本節的實際標題是使用者定義的,在上述範例中是 HdAudModel。 Needs=KS。註冊。。。行專案提供 INF 檔案內特定區段的相關資訊,安裝程式必須從中擷取安裝的資料
HdAudModel區段也包含 AddReg 和 AddProperty 區段的參考。 安裝程式會從 AddReg 和 AddProperty 擷取資料,分別設定登錄機碼和裝置屬性。 這裡參考的 AddProperty 區段是 HdAudModel.AddProperty ,它會使用下列格式來提供裝置屬性的相關資訊:
{property-category-guid}, property-pid, type, [flags], value
HdAudModel區段會顯示兩行專案,其中第一個專案已批註。標記為批註的行專案會將裝置屬性的值設定為 「1」。未標記為批註的行專案是安裝程式讀取的專案。 此行專案會使裝置屬性的值設定為 「0」。當此裝置屬性設定為 「0」 時,音訊裝置會退出宣告音量持續性。
如需 AddProperty 指示詞的詳細資訊,請參閱 INF AddProperty 指示詞。
對應至上述 INF 檔案片段中屬性類別目錄 GUID 和屬性識別碼的屬性名稱會PKEY_AudioDevice_DontPersistControls。