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
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
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)
- 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!
- Press Interpret DTD
- Double click the DTD in the right side column.
- Go to Reverse calculation press reverse calculation
- Go to the Registry Hack tab
- Press the More button
- Press Get Calculated
- Press Create Modeline
- Press Write DTDs to Registry
- 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
How to remove Windows Cardspace from the control panel of Windows XP
Today I was messing around with some policy settings at a customer site and they asked if I could disable the Windows Cardspace component in the Control Panel, of course I googled around first, but couldn’t find any usefull info, so I started looking in the registry myself, here’s how you do it.
- Start Regedit.exe and navigate to:
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ policies \ NonEnum
- Create a new DWORD value named {78CB147A-98EA-4AA6-B0DF-C8681F69341C}
- Double-click {78CB147A-98EA-4AA6-B0DF-C8681F69341C} and set its data to 1
- Close Regedit.exe
When you need to disable it centrally (like me) just use the Group Policy Preferences from Windows 2008 / Vista (which can be used on a Windows 2003 domain as long as the policy has been made on a 2008 or Vista machine)