IThastobecool.com Geeks have opinions too!

15Apr/104

Error 1330 during installation

Today a co-worker and I were struggling with the installation of JRE 1.6 update 19. It just wouldn’t install on a few boxes, on other boxes it ran smoothly… this drove me nuts! Time after time I was getting this error:

Product: Java(TM) 6 Update 19 -- Error 1330.A file that is required cannot be installed because the cabinet file C:\Users\########\AppData\LocalLow\Sun\Java\jre1.6.0_16\Data1.cab has an invalid digital signature. This may indicate that the cabinet file is corrupt.

I noticed that it was not an issue of Java, because some other installers would give me the same message… aaargh! So I decided to browse the web (which is always a good idea anyway ;) ), and I found some forum posts about something being wrong with the Certificate Revocation List. Tried all the thing suggested by numerous articles, but to no avail…

So then we decided to be brave and look around in the registry ourselves. And we found the solution :) . So to all of you who are struggling with the above error (not only for Java ofcourse), try the following:

Delete this registry key and try the install again. For me it would install perfectly :) :

HKLM\Software\Policies\Microsoft\SystemCertificates\TrustedPublisher\Safer

23Dec/090

How to suppress the Open File Dialog (zone checking)

If you use scripts for all kind of automation purposes, you definately have stumbled upon the issue that when you run the script, which in turn calls an executable file from somewhere on a network share, you get prompted with a Open File Dialog. Very annoying when you just want your script to run silently.

Fortunately there’s a workaround for this:

Change the SEE_MASK_NOZONECHECKS environment variable

Within your script, temporarily change the SEE_MASK_NOZONECHECKS environment variable to 1.
Note Do not use this as a permanent system environment variable because it will disable all Zone Checking.

VBScript example:


set oShell= CreateObject('Wscript.Shell')
set oEnv = oShell.Environment('PROCESS')

oEnv('SEE_MASK_NOZONECHECKS') = 1

oShell.Run 'somecommand',0,True

oEnv.Remove('SEE_MASK_NOZONECHECKS')

Note: I replaced all double quotes with single quotes in this example because of the syntax highlighting, if you want to use this example, find and replace all single quotes ( ' ) with double quotes ( " )


Powershell example:

$env:SEE_MASK_NOZONECHECKS = 1

somecommand.exe

Remove-Item env:\SEE_MASK_NOZONECHECKS
7Oct/090

Add optional updates to MDT

Since Henk is the MDT guy on this blog he got me interested enough to give it a try. For testing purposes i use and break a lot of virtual machines so using MDT + WDS to recreate them wasn’t such a bad idea. Out of the box you can give your task sequence the option to run windows update post-setup: But then it will run every time :( .  As you all know you can add your own applications as optional packages so you can select them pre-installation. This got me thinking: Let’s add windows update as optional package and use the framework that’s already available for this.

Howto:

  • Add a new application
  • Standard application
    • Quiet installation command
      • cscript.exe "%SCRIPTROOT%\ZTIWindowsUpdate.wsf"

That’s it :)

 MDT UPDATE

Filed under: mdt, Tweak No Comments
29Aug/0918

Intel 945 and External Display native resolution

Just a quick post in between ;) As promised I’m still working on my XenoCode post to followup on Mark’s VMware bash ;) .

I noticed messing around/coding/working etc all the time on my work laptop was killing my back, so I decided to buy 2 20” tft screens (Dell S2009W) and a docking station for my laptop so I would have a decent workplace @ home. Pretty much fun, untill I discovered that the monitors native resolution (1600x900) wasn’t supported by my laptops graphic card (Intel 945 Express,  Intel GMA 950 chip)… Hmm that was a real bummer…. after googling around I found this post talking about how to enable custom resolution on Intel graphics… But that looked mighty complicated at first and I didn’t want to bother…

After 2 days working on non-native resolution I decided I had to fix this, so I started again… this time I discovered the DTD Calculator

Basically what it comes down to:

  • Get your monitor info using MonInfo (make sure you have your external monitor attached, otherwise MonInfo will only report back data from your internal display, also make sure you selected your external monitor in MonInfo, you can see that quick enough if you look at Standard Timings Supported)

image

  • Paste your RAW DATA in the DTD Calculator tool on the Interpret EDID tab.
  • NOTE: Make sure you're running DTD Calculator as an administrator on Windows Vista / Windows 7. Otherwise the tool won't be able to edit the registry!

image

  • Press Interpret DTD

image

  • Double click the DTD in the right side column.
  • Go to Reverse calculation press reverse calculation

image

  • Go to the Registry Hack tab

image

  • Press the More button

image

  • Press Get Calculated

image

  • Press Create Modeline

image

  • Press Write DTDs to Registry

 image

  • The program prompts you to reboot your computer, do this and presto! You can select your monitor’s native resolution after rebooting the machine :)

IMPORTANT: Sometimes it can happen that the DTD you get for your monitors native resolution just won’t work on your system, even with this hack…

If the DTD data is correct in the registry but the resolution is still not available, it's a pretty good bet it's forbidden in the BIOS.  How do we get around this?  We cheat!  The BIOS contains the Mode Removal Table, and it has entries like "1600x900, 60Hz" and "1400x1000, 50Hz".  But it doesn't say anything about 1599x900, or 1399x1000, so those are allowed.  (Muahahahaha!  Can you feel the evil power you wield as we bypass this silly restriction?)  Ridiculous, really, and you'll lose 1 pixel on the side of your screen… who cares!

For more detailed information about calculating the DTDs and lowering a it by a pixel, please visit this page

For all you lazy people out there (like me ;) ) here is the right DTD for the Dell S2009W monitor (1599x600@60Hz):

2F 26 3F A1 60 84 1A 30 30 20 35 00 BB F9 10 00 00 1A

Tagged as: 18 Comments