title: UWP HID SendOutputReport always returns access denied, requires ReadWrite permissions
body: <p>I'm trying to read a Wii Remote using the HID class, in a UWP app (C# .net), similar to <a href="https://channel9.msdn.com/coding4fun/articles/Managed-Library-for-Nintendos-Wiimote" rel="noreferrer">this</a>.</p>
  
  <p>However, I can't seem to do much, as I can't get a Write-capable HID handle, which is required to do a HID SendOutputReport (needed for the device configuration).</p>
  
  <p>I've tried several permissions combinations, I can read just fine with the current permissions in the manifest, but I've yet to be able to write.</p>
  
  <p>I've also tried messing with selectors, to see if there was another possible handle available that could be written, but alas, nothing.</p>
  
  <p>Any insight would be very appreciated.</p>
  
  <p><a href="https://github.com/cefoot/UWiimoteP/issues/1" rel="noreferrer">Public discussion.</a>
  <a href="https://stackoverflow.com/questions/44229225/hiddevice-fromidasync-returns-null-with-readwrite">Similar issue</a></p>
  
  <p>The current permissions I'm using look like this.</p>
  
  <pre><code>&lt;Capabilities&gt;
      &lt;DeviceCapability Name="bluetooth" /&gt;    
      &lt;DeviceCapability Name="humaninterfacedevice"&gt;
        &lt;!-- Any generic gaming device  --&gt;   
        &lt;Device Id="any"&gt;
          &lt;Function Type="usage:0004 *"/&gt;
          &lt;Function Type="usage:0005 *"/&gt;
        &lt;/Device&gt;
        &lt;!--Wii Remote Device--&gt;
        &lt;Device Id="vidpid:057E 0306 bluetooth"&gt;
          &lt;Function Type="usage:0005 *" /&gt;
          &lt;Function Type="usage:0001 0005" /&gt;
          &lt;Function Type="usage:0002 *" /&gt;
          &lt;Function Type="usage:0003 *" /&gt;
          &lt;Function Type="usage:0004 *" /&gt;
          &lt;Function Type="usage:0006 *" /&gt;
          &lt;!--&lt;Function Type="usage:0007 *" /&gt;--&gt;
          &lt;Function Type="usage:0008 *" /&gt;
          &lt;Function Type="usage:0009 *" /&gt;
          &lt;Function Type="usage:000A *" /&gt;
          &lt;Function Type="usage:000B *" /&gt;
          &lt;Function Type="usage:000E *" /&gt;
          &lt;Function Type="usage:000f *" /&gt;
          &lt;Function Type="usage:0010 *" /&gt;
          &lt;Function Type="usage:0011 *" /&gt;
          &lt;Function Type="usage:0012 *" /&gt;
          &lt;Function Type="usage:0013 *" /&gt;
          &lt;Function Type="usage:0014 *" /&gt;
          &lt;Function Type="usage:0015 *" /&gt;
          &lt;Function Type="usage:0016 *" /&gt;
          &lt;Function Type="usage:0017 *" /&gt;
          &lt;Function Type="usage:0018 *" /&gt;
          &lt;Function Type="usage:0019 *" /&gt;
          &lt;Function Type="usage:001A *" /&gt;
          &lt;Function Type="usage:001B *" /&gt;
          &lt;Function Type="usage:001C *" /&gt;
          &lt;Function Type="usage:001D *" /&gt;
          &lt;Function Type="usage:001E *" /&gt;
          &lt;Function Type="usage:001F *" /&gt;
          &lt;Function Type="usage:0021 *" /&gt;
        &lt;/Device&gt;
      &lt;/DeviceCapability&gt;
    &lt;/Capabilities&gt;
  </code></pre>
  
  <p>EDIT: Added similar issue.</p>