Just checked the code, the 'no instances available' is interesting as it seems VBox does not return the values for MemoryErrorCorrection, MemoryDevices and MaxCapacity correctly. Working out a bypass if they return invalid values which one of them must of returned less than 1024 which tripped up my error checking.
Ok have adjusted the code that if VirtualBox is detected then it will auto bypass the extra memory checking which returns invalid results. Also updated the QTlog output to reflect the bypass (if the QT fails) it will show a bit more info in that section. Will PM you a test version @Carlos Detweiller in a few minutes once i have tested to make sure it not upset non VBox systems. PM Sent with test version 70.1
The Chassis type 01 Other is normal for VM's so that just cosmetic. Not sure if there is a setting in the VBox config manager for Chassis type but because it a virtual PC then it seems that it is preset as 01 same as VMware, maybe other VM software too.
The BIOS DMI information can be fully configured, including DMI system enclosure or chassis (type 3). Chapter "9.12. Configuring the BIOS DMI information" of the VBox manual. However, it is not configured by default.
Yeah i remember playing with the DMI entries when i took over the project when i used VBox in my testing. I do the same with VMWare .vmx and also add MSDM/SLIC tables as well. I know SLIC tables can be added in VBox, however MSDM did not seem to work or caused the VM to abort - hence why i changed to VMWare.
Query Tool v70.1 has been uploaded, 2nd post download link, password and Hashes been updated. Spoiler: QT 70.1 Summary + Due to a glitch with VirtualBox in which the extended Memory queries are giving invalid return results the QT will now automatically bypass that section to prevent the QT from terminating. You will see a message saying that the area is being bypassed. Many thanks to @Carlos Detweiller for letting me know about this problem and for testing this 70.1 version which now works to prevent the error. + Also there is a simple check for the ComputerName to see if spaces are detected within the system variable, if so you will see a note about it that the QT may hang or terminate.
Have also updated the next MRP release's code with the same bypass method used in the QT for the extra memory checks section for VBox so it don't possibly crash the project in the same way. No new options added this time round as sorting the main code first. It could be released as a v98.1 'Refresh' now but as there has been a fair bit of fixing and improving done, it will end up as v99.0 either way. At T4 Test stage now so may be a while yet as want it to be as close to fully operational as possible. Close to the 100th edition!
Will have to think of something special to add to that 100th version To be perfectly honest i never thought the project would get to where it is today as there was so many hurdles to overcome. Still are as m$ changes the goal posts almost every release or update!
Have found the bug in MRP! In section #06 (BaseMNF) the void variable was not reset to NUL before checking. The QT was correct, but in the MRP section, because it is slightly different in operation, that flag was still set to be voided from the previous #05 (SYSMNF) section. Fixed it, took me a good two hours to check as it was so easy to miss the line! I have now wrote a special MRP DMI check script which i can now use to check any other bugs in that area. It was through that i found the missing variable setting as i copied/pasted each line one at a time checking as i went along. Time consuming as there is over 500 lines of code, (524 i counted ), just in that DMI checking area alone. I left the 'bug' in and tested, sure enough it failed and sent the conflict section into confusion. Here is how i found the bug: Spoiler: MRP Test DMI - with bug Code: Debug DMI Info Read. -- Section: CHECK #01 - CSNAME CSNAME = [To Be Filled By O.E.M.] Voided = [Yes] -- Section: CHECK #02 - SYSMODEL SYSMODEL = [To Be Filled By O.E.M.] Voided = [Yes] -- Section: CHECK #03 - BASEPRO BASEPRO = [H81 Pro BTC R2.0] Voided = [No - Checking] No DMI Database Match Found. -- Section: CHECK #04 - CSVENDOR CSVENDOR = [To Be Filled By O.E.M.] Voided = [Yes] -- Section: CHECK #05 - SYSMNF SYSMNF = [To Be Filled By O.E.M.] Voided = [Yes] -- Section: CHECK #06 - BASEMNF BASEMNF = [ASRock] Voided = [Yes] <-- Flag not reset to 'No - Checking' -- Section: checkout #08 - SLIC Check 1 No SLIC Database Match Found. -- Section: setkey - conflict 1 [CKDCF] Detected possible BIOS/DMI conflicts. Voided = [Yes] -- Section: setkeyA - Conflict 2 -- Section: setkey2 [CKDCF] No BIOS/DMI conflicts found. [CKDCF] Unable to resolve BIOS/DMI conflicts. [CKDCF] BIOS/DMI query routine completed. -- Section: SLIC Check Done -- Section: SLIC or MSDM -- Section: Bypass MSDM [NOSLC] No valid SLIC was found for OEM activation. Theme {MAN} = [Default] / ID [] Activation = [Un-Listed] Spoiler: MRP Test DMI Bug Fixed Code: Debug DMI Info Read. -- Section: CHECK #01 - CSNAME CSNAME = [To Be Filled By O.E.M.] Voided = [Yes] -- Section: CHECK #02 - SYSMODEL SYSMODEL = [To Be Filled By O.E.M.] Voided = [Yes] -- Section: CHECK #03 - BASEPRO BASEPRO = [H81 Pro BTC R2.0] Voided = [No - Checking] No DMI Database Match Found. -- Section: CHECK #04 - CSVENDOR CSVENDOR = [To Be Filled By O.E.M.] Voided = [Yes] -- Section: CHECK #05 - SYSMNF SYSMNF = [To Be Filled By O.E.M.] Voided = [Yes] -- Section: CHECK #06 - BASEMNF BASEMNF = [ASRock] Voided = [No - Checking] <-- Fixed! SUCCESS: DMI Database Match Found. -- Section: setkey2 [CKDCF] No BIOS/DMI conflicts found. [CKDCF] BIOS/DMI query routine completed. -- Section: SLIC Check Done -- Section: Bypass MSDM [NOSLC] No valid SLIC was found for OEM activation. Theme {MAN} = [Asrock] / ID [#06] Activation = [Un-Listed] Due to the complexity of the project it is so easy to get these little bugs sneak in, you get the line of domino's effect, one wrong nudge and the rest falls down. @JanCerny , Thank you for the feedback and data to pin point the bug.