Sadly most checkers are GUI type and not have a CLI version so had to write one, it seems ok, just needs more testing. For use with MRP i pass the MSDM key detected and the OS kernel number 8, 8.1 or 10 that is installed, then check against the pidgen stuff that returns what Edition the key is for, check against the OS installed if matches use the key, if not ignore it as the user has installed say Pro on a PC that has MSDM key for Core.
Bad display driver for that windows version (10). Check oem manufacturer for updated driver or rollback to earlier version. My HP did the same thing.
Built my new test rig Interestingly the refresh RS1 Jan ISO works perfectly with MRP, the lock/login screens are in place! Think the old Acer PC has a few problems. Have been messing about with the PIDkey checker, no matter how hard i try to speed up the processing, it still takes about 1 minute to pull out the Edition ID grr, i have to do a loop back to test if the key is 8.x so in total two minutes if the Edition is not identified on the first pass. Might have to pass on that, pity would of been a very useful addition to be able to check the MSDM key against the OS installed to see if it for that Edition. How the other GUI PiD checkers can whizz through a check in less than a second i have no idea!
I was using AutoIT and using pidgenx.dll and the pkey.xrm-ms files, gez its slow decoding, works yes will grant it that, but upto 2 mins was a bit much to a double pass if key not match OS/kernel.
Does the keyinfo program accept command line? as this is what i need for MRP , pass the MSDM key to it and it returns what edition, which then i can check if it is the one being installed. Edit it does nice! Will have a play about, i can parse the xml for the 4 digit code... When i can decode that lol.
Remember that Edition ID is not just 4 digits. It may be longer. But you can parse the XML and use the Activation ID to get the Edition ID. Also the Extended PID has the Edition PID in the second block. Sample vbs.code you can parse through with cscript getactid.vbs //nologo Code: strComputer = "." Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") Set colItems = objWMIService.ExecQuery("Select * from SoftwareLicensingProduct") For Each objItem in colItems If NOT objItem.ProductKeyID = "null" Then Wscript.Echo "Extend PID: " & objItem.ProductKeyID Wscript.Echo "Windows Family: " & objItem.LicenseFamily Wscript.Echo "Windows Type: " & objItem.ProductKeyChannel Wscript.Echo "Activation ID: " & objItem.ID Exit For End If Next
After much tweaking and finding what code does what, I have thrown together a simple MSDM checker for MRP. It does not use XML files, i use another simpler method, took a while to put it together and it may not be 100% perfect. I will create a special test QTool later today with the additional MSDM check so that it will help determine if the process is correct then if it works implement it into MRP itself. If this all goes to plan then MRP will be more intelligent with MSDM keys and not insert the incorrect Edition key for a different installed OS like it does at present. More details later...
Ok Here is the first test of the QT with the MSDM Edition info. Code: Size (Compressed) 137.67 KB REMOVED FOR NOW For MSDM computers!! No other changes made. So running this on a non MSDM PC will give results as normal. For those with the table in the bios you *should* get another #11 line with the right info for the key. Fingers crossed! It may need tweaking as I have not had time to do a test on a MSDM PC yet. So your my 'beta' testers. Saving the results will NOT show the MSDM key as before, ONLY the Edition information. NOTE: You will need the vcredist_x64.exe or vcredist_x86.exe files installed, or you will get a MSVCD110.DLL error.
I got a Lenovo Thinkthing on W10 home but the damn psu's packed up and as always it a non standard type of PSU so can't connect a normal ATX one as the cables all different.
Sure is, set the PC all up , switched on, a fizzle and a smoke filled room lol. Will see if i can 'bodge' a ATX 24pin to Lenovo 10pin connector. If im not back i blew it up and me with it lol