;/*++
;
;Copyright (c) 1990-2000  Microsoft Corporation
;
;Module Name:
;    SurfacePowerTrackerCore.INF
;
;Abstract:
;    INF file for installing the SurfacePowerTrackerCore Driver
;
;--*/

[Version]
Signature="$WINDOWS NT$"
Class=System
ClassGuid={4D36E97D-E325-11CE-BFC1-08002BE10318}
Provider=%VENDOR%
CatalogFile=SurfacePowerTrackerCore.cat
DriverVer = 07/31/2024,2.149.3.0
PnpLockdown=1

[DestinationDirs]
DefaultDestDir = 13

; ================= Class section =====================
[SourceDisksNames]
1 = %DiskName%,,,""

[SourceDisksFiles]
SurfacePowerTrackerCore.sys  = 1,,

;*****************************************
; Install Section
;*****************************************

[Manufacturer]
%VENDOR%=Vendor,NTamd64.10.0...19041

[Vendor.NTamd64.10.0...19041]
%SurfacePowerTrackerCore%=SurfacePowerTrackerCore.Inst, {d69c83f8-149b-4fd3-9275-19762bd88160}\SurfacePowerTrackerCore

[SurfacePowerTrackerCore.Inst.NT]
CopyFiles=Drivers_Dir

[SurfacePowerTrackerCore.Inst.NT.HW]
AddReg = SurfacePowerTrackerCore.Inst.NT.AddReg

[SurfacePowerTrackerCore.Inst.NT.AddReg]
; Allow access to system, administrators group, and user-mode drivers
HKR, , Security, , "D:P(A;;GA;;;SY)(A;;GA;;;BA)(A;;GA;;;UD)"

;-------------- Service installation
[SurfacePowerTrackerCore.Inst.NT.Services]
AddService = SurfacePowerTrackerCore,%SERVICE_DEMAND_START%, SurfacePowerTrackerCore_Service_Inst

[Drivers_Dir]
SurfacePowerTrackerCore.sys

[SurfacePowerTrackerCore.Inst.NT.Events]
AddEventProvider = {23AC50B3-680E-7AD3-A2B3-D5DBEF945870},SurfacePowerTrackerCore_EventProviderInstall

[SurfacePowerTrackerCore_Service_Inst]
DisplayName    = %SurfacePowerTrackerCore%
ServiceType    = %SERVICE_KERNEL_DRIVER% 
StartType      = %SERVICE_DEMAND_START% 
ErrorControl   = %SERVICE_ERROR_NORMAL% 
ServiceBinary  = %13%\SurfacePowerTrackerCore.sys

[SurfacePowerTrackerCore_EventProviderInstall]
ProviderName=Microsoft-Surface-SurfacePowerTrackerCore
ResourceFile=%13%\SurfacePowerTrackerCore.sys
MessageFile=%13%\SurfacePowerTrackerCore.sys
AddChannel= Microsoft-Surface-SurfacePowerTrackerCore/Operational,0x2,

;-------------- Interface installation
; Make SPT_CORE_EXTERNAL_DEVINTERFACE_GUID {14afdc1b-3192-4587-8290-62f8b7bcdd94} available for UWP app.
;
[SurfacePowerTrackerCore.Inst.NT.Interfaces] 
AddInterface= {14afdc1b-3192-4587-8290-62f8b7bcdd94},,AddInterfaceSection 
 
[AddInterfaceSection] 
AddProperty= AddInterfaceSection.AddProps 
 
[AddInterfaceSection.AddProps] 
; DEVPKEY_DeviceInterface_UnrestrictedAppCapabilities 
{026e516e-b814-414b-83cd-856d6fef4822}, 8, 0x2012,, "Microsoft.SurfacePowerTrackerCore_8wekyb3d8bbwe"

[Strings]
VENDOR="Surface"
SurfacePowerTrackerCore = "Surface SPT Core"
DiskName = "Surface SPT Core Driver Installation Disk"

SERVICE_BOOT_START     = 0x0 
SERVICE_SYSTEM_START   = 0x1 
SERVICE_AUTO_START     = 0x2 
SERVICE_DEMAND_START   = 0x3 
SERVICE_DISABLED       = 0x4 

SERVICE_KERNEL_DRIVER  = 0x1 
SERVICE_ERROR_IGNORE   = 0x0 
SERVICE_ERROR_NORMAL   = 0x1 
SERVICE_ERROR_SEVERE   = 0x2 
SERVICE_ERROR_CRITICAL = 0x3 

REG_EXPAND_SZ          = 0x00020000 
REG_DWORD              = 0x00010001 
REG_MULTI_SZ           = 0x00010000
REG_BINARY             = 0x00000001
REG_SZ                 = 0x00000000
