Wednesday, June 13, 2007
A good quote
Tuesday, April 03, 2007
Straighten' up shelves
At Voodoo, work progresses on trying to hasten and solidify the software system. This is an infinite effort and relatively stressful.
The testing system (Haiti) has hit its stride and has matured marvelously. We have a filtering system to not install programs that cause programs with certain hardware configurations (I'm looking at you, vendors!) or operating systems (Quake III and VISTA!). And this enables tests that only work on specific operating systems (ie, WinSAT).
Bugs to be worked out:
After Sysprep > WinSAT hangs on first boot (started by MSOOBE.exe). Current work-around is Shift-F10 > taskmgr.exe > Processes tab > End Process on WinSAT. You can rerun WinSAT later. Cause of this TBD.
This problem is described in this links...
http://forums.windowsvistamagazine.com/forums/thread/2343.aspx
Odd that we see it on fresh systems...
More testing is needed...
Sunday, October 22, 2006
Tech spec sheets...
I'll SED.EXE the text out of the generated scores and replace place-holder text in the tech spec HTML page... That should make generating spec sheets extremely easy...
Back to Voodoo...
To give you an idea about the inner workings of our softwaring process works:
1) Technician enters the customers WO number.
2) The computer pulls the system configuration from the database
3) The machine then reads the system configuration and installs the correct OS.
4) Upon reboot the machine parses the configuration and installs the cusomers chosen software and hardware drivers. For the hardware we follow the "failing gracefully" guideline. We actually enable SLI in all Nvidia configurations. The Nvidia drivers will detect that it should have SLI but in a single card configuration it will throw up a dialog box stating that SLI will be auto-disabled. And upon reboot the machine is correctly configured without adding any more detection/complexity. Ahhh, failing gracefully :)
5) Second QC is a script that checks all the "optical" portions of the computer. This includes things like paint color, tattoo's, liquid color, etc. Everything physical. This test, when I return, will start to include things like counting video cards, ensuring SLI and crossfire is enabled, etc.
6) Lastly is Haiti. Originally designed by Casey Inlow and myself, it is a comprehensive test suite of games, real-world and artificial applications. Artificial applications include CPU Burn, Prime 95, etc.
With HP, it will be nice and interesting to see what they think of all this work and effort. I'm sure they have some very smart guys who might just laugh at all of this effort, or they might be blown away...?
I guess time will tell... Very shortly.
Friday, September 15, 2006
The Unbeatable Problem.
No problem is unbeatable if you look at it as files and registry entries (in Windows). I recently came across a very, very pain in the ass problem that hasn't seemed to have been resolved anywhere. Microsoft has a solution for it, but Microsoft's solution did not resolve the issue I was having. The interface on the clipart window worked-- to an extent. You could NOT open any of the folders in the collection list. My collections, Office collections, Web collections, none of them were expandable. The user was getting this error message:
Clip art organizer cannot complete the requested task.
Class not registered. Error code 0x80040154
The solution for me? Doing registry traces using Regmon to find out what registry keys it was using (using filemon revealed that there were no missing files).
Initially I found the error message repeated itself BEFORE drawing the collection list but then would continue after the message was displayed. I then tried to time Regmon to monitor only MSTORE.EXE (the clip organizer app) to only monitor just before and then stop when the message was displayed. The list of registry keys I got were HKCR and HKCU CLSID registry keys (Class ID's -- class not registered --> we're close here :)). I went through each registry key but they all seemed fine (ie, they opened without issue). So, step 2 was to repeat the process on a working machine. There was no errors and the regmon dump looked almost identical on both machines with the differences being negligible.
Time to get into the nitty gritty. So I opened each CLSID registry key found in the regmon dump in a working machine and the non-working machine. I found TWO keys that did not match. These were those keys:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\CLSID\{ef636390-f343-11d0-9477-00c04fd36226}]
@="OLE DB Rowset Proxy"[HKEY_CLASSES_ROOT\CLSID\{ef636390-f343-11d0-9477-00c04fd36226}\Implemented Categories]
[HKEY_CLASSES_ROOT\CLSID\{ef636390-f343-11d0-9477-00c04fd36226}\Implemented Categories\{00000003-0000-0000-C000-000000000046}]
[HKEY_CLASSES_ROOT\CLSID\{ef636390-f343-11d0-9477-00c04fd36226}\InprocServer32]
@="C:\\Program Files\\Common Files\\System\\Ole DB\\msdaps.dll"
"ThreadingModel"="Both"[HKEY_CLASSES_ROOT\CLSID\{ef636390-f343-11d0-9477-00c04fd36226}\ProgID]
@="DBRSTPRX.AsProxy.1"[HKEY_CLASSES_ROOT\CLSID\{ef636390-f343-11d0-9477-00c04fd36226}\VersionIndependentProgID]
@="DBRSTPRX.AsProxy"
AND:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\CLSID\{ef636392-f343-11d0-9477-00c04fd36226}]
@="OLE DB Row Proxy"[HKEY_CLASSES_ROOT\CLSID\{ef636392-f343-11d0-9477-00c04fd36226}\Implemented Categories]
[HKEY_CLASSES_ROOT\CLSID\{ef636392-f343-11d0-9477-00c04fd36226}\Implemented Categories\{00000003-0000-0000-C000-000000000046}]
[HKEY_CLASSES_ROOT\CLSID\{ef636392-f343-11d0-9477-00c04fd36226}\InprocServer32]
@="C:\\Program Files\\Common Files\\System\\Ole DB\\msdaps.dll"
"ThreadingModel"="Both"[HKEY_CLASSES_ROOT\CLSID\{ef636392-f343-11d0-9477-00c04fd36226}\ProgID]
@="DBROWPRX.AsProxy.1"[HKEY_CLASSES_ROOT\CLSID\{ef636392-f343-11d0-9477-00c04fd36226}\VersionIndependentProgID]
@="DBROWPRX.AsProxy"
The "non-working" computer only had the Implemented Categories subkey in each of the main keys, missing InproceServer32, ProgID and VersionIndependentProgID.
Added those keys and alls well :)