Based on the way the WMIC routine obtains the memory information, i *think* there is a solution. As HP/Compaq has a thing with ROM's be it System or other EEPROM etc, i have added extra checks to see if a ROM is detected and to skip any checks for that slot, plus a few other tweaks too as ROM does not return a speed (usually). A quirk with WMIC is that it will still set a variable even if it is null - the sting in the tail is that it is not exactly null, so when you use IF DEFINED <variable> it gives a false result, you also have to check if the variable is "" ie IF /I "%Variable%"=="" which is also NULL. So with that, i now check if the variable is defined AND if it is "" too. I tested the updated routine on my HP SFF Desktop which at slot 4 (counting from zero) the speed variable is "" because that slot is a System ROM and with the modifications it now skips that line to check for slot 5 etc. I wish the manufacturers stuck to the defined principles but alas they don't and they all have their own 'propriety' ways of doing things which causes all sorts of hassle. Here is my results to show how the 'tweaks' have worked... Code: Before modifications: Slot0 - [XMM1, 2 GB, 800 Mhz] Slot1 - [XMM2, 2 GB, 800 Mhz] Slot2 - [XMM3, 2 GB, 800 Mhz] Slot3 - [XMM4, 2 GB, 800 Mhz] Slot4 - [SYSTEM ROM ,4 MB , Mhz] ------------------------------------------------------- After Modifications: Slot0 - [XMM1, 2 GB, 800 Mhz] Slot1 - [XMM2, 2 GB, 800 Mhz] Slot2 - [XMM3, 2 GB, 800 Mhz] Slot3 - [XMM4, 2 GB, 800 Mhz] Fingers crossed that will resolve that little quirk.
Also running the QT via PowerShell host also presents a few problems as even though they say PS is the successor to Batch/Command (CMD.COM) it is not totally true as some conversion is required, mainly because the PS native interpreter cannot cope with certain code structures, such as when it comes across a { or } it 'thinks' it is a block of code similar to the ( ) block in command scripts. 'Powerful' as PS may be - it is a slow interpreted language, much akin to programming in B.A.S.I.C - it has to be analysed then converted to machine code the computer can understand which takes time. I did write some of the QT ages ago in PS but it took over a minute to do something that CMD script took less than 3 seconds! Needless to say i gave up on PS after that experience. Although if needed i would use PS for certain tasks when required, but for now CMD does the job. The QT v81+ checks if PowerShell is running even if you have another PS window open it will auto exit as i am just using simple checks to see if PS is detected/in use, as i would rather spend my time working on the main code and ironing out the bugs that are sneaking in.
That is for Enterprise/Server editions only! If you force set that entry on other editions it can prevent Windows Updates or cause errors that it cannot download/process them and goes into a loop wasting bandwidth re-downloading... The MRP does set certain aspects when the option 'set feedback to basic/never' is used. Users can set their own tweaks at their own risk, i do not want the MRP to cause more problems for the non tech savvy users with potentially unsafe tweaks. The worst offender is Microsoft Compatibility Appraiser (CompatTelRunner.exe), the MRP does silently remove that pest automatically and sets firewall blocks for Win10. Sadly a SFC /Scannow will revert the deleted exe, but the firewall blocks are still in place like the other blocks for Cortana etc so very little is leaked if anything.
ok now i see settings telemetry option to "0 - Security" only works on Windows 10 Enterprise (including LTSB), Education, IoT and Server editions.
yeah if you set it for any other edition it can cause very weird problems with WU because for some reason m$ linked it, but on Enterprise W10 editions (incl. Servers) it can be separated. Probably because companies that buy those OS/Editions pay a LOT of money and so M$ allows them to tweak a lot more than the average consumer. I am very careful when adding options that can change the way the OS works, hence why some are only available when in Advanced Mode and i inform the user that using such options could have other effects and to be basically used at their own risk.
Just a heads up with progress... Query Tool v81.0 has a pre-check routine for any problem manufacturers such as HP/Compaq/Packard Bell, (the list will expand if more are needed to be added), this will auto disable certain queries that caused the QT to abort - usually in the extended memory parts. If a problem maker is detected the QT will show a line mentioning it was detected during the scanning processes and also make a note in the QTLog.log file. Added Computer UUID, HDD/SSD Serial number and MAC addresses for network adaptors as requested. These will only show on the GUI display and for security reasons are not shown in the saved report.
Im gonna bug you completely now.. Would it be possible to make QT run in WinPE? I built a new computer last weekend and realized itd be real neat to just boot a setup from USB or PXE and be able to run QT to gather data on the display, such as make and model for one to write down and use in deployment
it could but it will not be able to detect any MSDM or SLIC properly more so for below win 8.0. So at the moment it not possible, if i manage to get time to totally re-write it then it may be possible. if .net could be integrated into the WinPE then it may just work.
Not entirely sure actually:/ I "know" Deployment toolkit as a checkbox to add Net Framework feature. Dont know exactly how it works
no worries. I can see the problem the dreaded ( ) brackets! But i think i have sorted the problem (i hope) for HP/Compaq now. It was easier to bypass than to keep adding more and more code for the odd HP which always brings up new challenges.
I repaired this HP EliteBook Folio 1040 G2 i5. It had an internal short circuit with some water help. I asked HP to repairt it but they wanted 1.200€. I bought a Mothetrboard from china 180€. It Works perfectly but I don't have the BIOS password. LatinMcG is helping me. I Will try to read the BIOS. May this be a problema for your software?
the bios password will not affect the QT or MRP if you use that. Hope you can 'unlock' it as i know they can be another awkward area with HP's. Seems to be a pattern here
Let me know when you have it ready to test it! Yes, HP is odd and mean did not want to help me with the password issue because I did not repaired my laptop with them.
nah i just tweak areas that give some grief, most times can fix them others i have to rewrite the routine and get it right a 2nd (or 3rd time).
one thing i have noticed it not picked up on any network adaptors! I would of thought at least it detected LAN or WiFi.... Unless HP have denied that information... I know they use white-lists for wireless adaptors but not seen them blocked before...