Files
LookingGlass/idd/LGIdd/LGIdd.inf
Geoffrey McRae a1f11bcc3e [idd] install: quiesce devices during driver updates
Stop LGIddHelper before updating either UMDF stack. Disable LGInput
before LGIdd, update both packages while quiesced, then restore the
provider before its dependent and start the service last.

Use in-use replacement for UMDF binaries and prevent the INF from
restarting the Helper during package installation. Report each
SetupAPI restart result and propagate it through NSIS.

Roll back transaction-owned devices, packages, and service state on
fresh-install failure. Preserve dependency order during removal and
select the package actually installed on each devnode.
2026-08-15 18:50:44 +10:00

90 lines
4.3 KiB
INI

;
; LGIdd.inf
;
[Version]
Signature="$Windows NT$"
Class=Display
ClassGuid={4D36E968-E325-11CE-BFC1-08002BE10318}
ClassVer=2.0
Provider=%ManufacturerName%
CatalogFile=LGIdd.cat
DriverVer=0.1
PnpLockDown=1
[Manufacturer]
%ManufacturerName%=Standard,NT$ARCH$
[Standard.NT$ARCH$]
%DeviceName%=LGIdd_Install, Root\LGIdd
%DeviceName%=LGIdd_Install, LGIdd
[SourceDisksFiles]
LGIdd.dll=1
LGIddHelper.exe=1
[SourceDisksNames]
1 = %DiskName%
; =================== UMDF Device ==================================
[LGIdd_Install.NT]
CopyFiles=UMDriverCopy
[LGIdd_Install.NT.hw]
AddReg = LGIdd_HardwareDeviceSettings
[LGIdd_HardwareDeviceSettings]
HKR,, "UpperFilters", %REG_MULTI_SZ%, "IndirectKmd"
HKR,, "Security", %REG_SZ%, "D:P(A;;GA;;;SY)"
HKR, "WUDF", "DeviceGroupId", %REG_SZ%, "LGIddGroup"
[LGIdd_Install.NT.Services]
AddService=WUDFRd,0x000001fa,WUDFRD_ServiceInstall
AddService=LGIddHelper,0x000004c0,LGIddHelper_ServiceInstall
[LGIdd_Install.NT.Wdf]
UmdfService=LGIdd,LGIdd_Install
UmdfServiceOrder=LGIdd
UmdfKernelModeClientPolicy=AllowKernelModeClients
[LGIdd_Install]
UmdfLibraryVersion=$UMDFVERSION$
ServiceBinary=%12%\UMDF\LGIdd.dll
UmdfExtensions=IddCx0102
[WUDFRD_ServiceInstall]
DisplayName = %WudfRdDisplayName%
ServiceType = 0x1
StartType = 3
ErrorControl = 1
ServiceBinary = %12%\WUDFRd.sys
[LGIddHelper_ServiceInstall]
DisplayName = %HelperDisplayName%
Description = Improves UI interaction with the Looking Glass client
ServiceType = 0x10
StartType = 2
ErrorControl = 1
ServiceBinary = %12%\UMDF\LGIddHelper.exe
[DestinationDirs]
UMDriverCopy=12,UMDF ; copy to drivers\umdf
[UMDriverCopy]
LGIdd.dll,,,0x00004000
LGIddHelper.exe,,,0x00004000
; =================== Generic ==================================
[Strings]
ManufacturerName="Looking Glass"
DiskName = "LGIdd Installation Disk"
WudfRdDisplayName="Windows Driver Foundation - User-mode Driver Framework Reflector"
DeviceName="Looking Glass Indirect Display Device"
HelperDisplayName="Looking Glass IDD Helper"
REG_MULTI_SZ = 0x00010000
REG_SZ = 0x00000000
REG_EXPAND_SZ = 0x00020000
REG_DWORD = 0x00010001