title: Determine what (if any) PCI devices are plugged into motherboard PCI(e) slots
body: <p>I am writing a program in C# to perform a hardware audit across many Windows XP workstations. </p>
  
  <p>I need to determine which PCI devices are actual cards connected via a motherboard slot - NOT onboard devices that also use the PCI buses (built into the motherboard).  </p>
  
  <p>I can successfully list all devices that use all the PCI buses using a variety of WMI classes, but none provide any indication of what is onboard vs. what is connected via a slot.  </p>
  
  <p>I am not fussy about how the information is retrieved or from where it sourced (e.g. Pinvoke, WMI, registry, etc) as long as it's reliable.</p>
  
  <p>Thank you!</p>