Looking for ideas on how to detect when our Windows application is running in one of the following VM environments. Some starter ideas for detection are in parentheses. There may be (much) better detection techniques - the starter ideas I've come up with are based on my Google research.
VMWare (looking for the presence of optional VMware Tools is one way)
Microsoft Virtual PC (have a device named "Virtual HD" for their IDE disks, "MS Virtual SCSI Disk Device" for their SCSI disks)
Citrix Xen
Sun Virtual Box
Thank you, Malcolm