Поделиться через


Отказ от сохраняемости на уровне тома

По умолчанию параметры уровня тома сохраняются при перезагрузке компьютера. Это поведение системы по умолчанию называется сохраняемостью тома. Если вы не хотите, чтобы уровень громкости поддерживался системой после перезагрузки компьютера, можно использовать 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 .

Строка %MfgName% = CompanyName в разделе Manufacturer ссылается на раздел CompanyName , где указаны идентификатор модели и оборудования (hw-id) звукового адаптера. Этот раздел в INF-файле, где предоставляются сведения о модели и hw-id, называется разделом моделей. Фактическое название раздела определяется пользователем, а в предыдущем примере — CompanyName. Дополнительные сведения о разделе моделей в INF-файле см. в разделе Inf Models Section.

Раздел моделей, в свою очередь, ссылается на раздел установки драйвера устройства (DDInstall), где содержатся сведения о других INF-файлах, которые программа установки должна скопировать. Фактическое название этого раздела определяется пользователем, а в предыдущем примере — HdAudModel. Needs=KS. Регистрации... Запись line содержит сведения о конкретных разделах в INF-файлах, из которых программа установки должна получить данные для установки.

Раздел HdAudModel также содержит ссылки на разделы AddReg и AddProperty. Программа установки извлекает данные из AddReg и AddProperty, чтобы задать разделы реестра и свойства устройства соответственно. В разделе AddProperty, на который ссылается ссылка, используется hdAudModel.AddProperty , и в нем используется следующий формат для предоставления сведений о свойстве устройства:

{property-category-guid}, property-pid, type, [flags], value

В разделе HdAudModel отображаются две строки с первой закомментированной. Запись строки, которая закомментирована, задает для свойства устройства значение "1". Строка, которая не закомментирована, является записью, которую программа установки считывает. Эта запись строки приводит к тому, что для свойства устройства будет задано значение "0". Если для этого свойства устройства задано значение "0", звуковое устройство откажетесь от сохраняемости громкости.

Дополнительные сведения о директиве AddProperty см. в разделе Директива INF AddProperty.

Имя свойства, соответствующее GUID категории свойств и идентификатору свойства в предыдущем фрагменте INF-файла, PKEY_AudioDevice_DontPersistControls.