Windows.Devices.Custom.CustomDevice.FromIdAsync method to open your device and the SendIOControlAsync method to transfer information to and from the device. An app can't simply access any device interface it chooses. The app must declare the device interfaces that it accesses in the capabilities section of the app manifest. For the Windows Store device app associated with the Fx2 device, this looks like: <Package xmlns="http://schemas.microsoft.com/appx/2010/manifest"> … <Capabilities> <DeviceCapability Name="573E8C73-0CB4-4471-A1BF-FAB26C31D384" /> </Capabilities> </Package> Development Lifecycle Authoring This checklist describes what to do when authoring the software components for a Windows Store device app that follows the custom driver access design pattern. Note the testing and validation requirements for each component. Component Item Description Device Provide a functional The driver provides a custom device interface class Driver contract through a device GUID for its functional class. interface. Restrict the device The DEVPKEY_DeviceInterface_Restricted property interface. should be set to TRUE on the interface instance of that class. Implement custom The driver provides IOCTL commands to transfer functionality. information to and from Windows Store apps. Follow security The driver shouldn't specify a security descriptor that requirements. grants the AppContainer access to the device. Instead, the driver should grant normal unelevated users access to the device, and rely on the Device Broker to mediate the App's access. Create a driver package. The driver package contains the driver binaries and the .inf file that lists the hardware IDs of the devices the driver should be installed on, and which driver binaries and/or registry settings are required for each. Test and validate. To submit a custom driver to Windows Update the driver must meet the Certification Requirements for your type of device. For a custom access device, the driver must also pass Device.DevFundCDA. Note that this test requires manual intervention, which may increase the costs of testing. Device PrivilegedApps This element provides the privileged app info for each Metadata app, including the Package Name, Publisher, and Access Custom Driver fields. Each privileged app identified checks the Access Custom Driver checkbox
Windows.Devices.Custom.CustomDevice.FromIdAsync method to open your device and the SendIOControlAsync method to transfer information to and from the device. An app can't simply access any device interface it chooses. The app must declare the device interfaces that it accesses in the capabilities section of the app manifest. For the Windows Store device app associated with the Fx2 device, this looks like: <Package xmlns="http://schemas.microsoft.com/appx/2010/manifest"> … <Capabilities> <DeviceCapability Name="573E8C73-0CB4-4471-A1BF-FAB26C31D384" /> </Capabilities> </Package> Development Lifecycle Authoring This checklist describes what to do when authoring the software components for a Windows Store device app that follows the custom driver access design pattern. Note the testing and validation requirements for each component. Component Item Description Device Driver Provide a functional contract through a device interface. The driver provides a custom device interface class GUID for its functional class. Restrict the device interface. The DEVPKEY_DeviceInterface_Restricted property should be set to TRUE on the interface instance of that class. Implement custom functionality. The driver provides IOCTL commands to transfer information to and from Windows Store apps. Follow security requirements. The driver shouldn't specify a security descriptor that grants the AppContainer access to the device. Instead, the driver should grant normal unelevated users access to the device, and rely on the Device Broker to mediate the App's access. Create a driver package. The driver package contains the driver binaries and the .inf file that lists the hardware IDs of the devices the driver should be installed on, and which driver binaries and/or registry settings are required for each. Test and validate. To submit a custom driver to Windows Update the driver must meet the Certification Requirements for your type of device. For a custom access device, the driver must also pass Device.DevFundCDA. Note that this test requires manual intervention, which may increase the costs of testing. Device Metadata PrivilegedApps This element provides the privileged app info for each app, including the Package Name, Publisher, and Access Custom Driver fields. Each privileged app identified checks the Access Custom Driver checkbox
Windows%20Store%20Device%20App%20Design%20Guide%20for%20Specialized%20Devices%20Internal%20to%20the%20PC.docx