Outlook 2003 – the famous red x
Posted by Terje Skulstad in Software on June 25th, 2009
If you read this post, you probably have a client computer where the html mail in Outlook 2003 shows a red x where either the picture is a link or embedded in the mail. A number of web sites has the solution if we’re talking about the embedded pictures. You could then probably follow the instructions for deleting the registry key for the OutlookSecureTemp folder referenced in http://support.microsoft.com/default.aspx/kb/817878 or clean out the folder manually.
If your problem is related to images that are link to an Internet URL, you should check your IE settings. Where I work, we use a transparent proxy, so IE is set to detect settings automatically. This is accomplished with WPAD so you don’t have to to anything on the client. What I’ve found out is that Outlook is unable to detect this setting on a couple of clients, but if you insert the proxy address manually in the Intenret settings the picture link works. IE itself works flawless.
Haven’t found anything on the Microsoft KB concerning this, but seems to be a bug in the Outlook 2003 software. If you have any idea what could cause this feel free to post it.
Windows 2008 Sysprep – join domain issue
Posted by Terje Skulstad in Software, Windows on June 23rd, 2009
This week I’ve made a template for Windows 2008 Standard x86 for deployment of new VM’s to our ESX Servers. Sysprep is now done through an XML-file instead of the usual INF file.
To use it, you first have to install the Windows Automated Installation Kit and use the Windows System Image Manager. It’s more advanced than the good old sysprep.
What I wanted was a base install which could be created from the VMWare template, given a name an joined to a domain. Then you can change the IP-adress afterwards.
After creating a new VM, installed VMWare Tools and ran sysprep, I tested the startup. The VM booted, asked for language and computer name. Punched in a new computer name and got the logon prompt.
When I tried logging in as the domain administrator I got an error “the security database on the server does not have a computer account for this workstation trust relationship”
After looking through the event log (security) I saw that there was a failure audit for Winlogon, and when I looked at the name logged it was different than the one I gave the machine during the mini-setup.
I found that the name I gave the machine was applied after the computer actually was joined to the domain, so it got an auto-generated name in Active Directory
Since I then tried to log on from a computer with a name changed only locally through OOBE there was a security mismatch.
I ran sysprep again and this time I checked what the machine name was in AD (you can find it in the Computers special container) and gave the same in the Welcome Wizard and voila! Success!
I’ve tried to find out why this happens, but it seems it’s meant to be this way. No way in the current version of WAIK to give the computer a name before it’s added to the domain, so I’m stuck with adding it to a workgroup and change the name/ join domain afterwards. Sorry Microsoft, but this is a step back…
According to some posts on the web, this is by design and you should use something like netdom or a script to change the computername and join the domain, but why the f… did they add the option to the Answer file?!?!?
How-to uninstall Internet Explorer 8
Posted by Terje Skulstad in Software, Windows on May 13th, 2009
I you want to uninstall IE8 and it won’t uninstall through add/remove program. Should apply to beta and release candidate (that was where I needed it). Program didn’t show up in add/ remove, but could be uninstalled through %systemroot%\ie8\spuninst\spuninst.exe.

I had to use this procedure since I first installed the beta. When I tried to install the final version, I wasn’t able to upgrade.
IO Error in application
Posted by Terje Skulstad in Software on April 21st, 2009
Had a case today with an application giving an IO error on a terminal server (Windows 2003 combined domain controller/ terminal server/ Citrix) . If logging in with a domain admin it worked just fine, but if a regular user tried to start it, it caused an IO error. After playing around with the security policy, I discovered it could be solved by giving the create global objects permission to the user.
Setting is under Default Domain Controller Policy –> Local Policies –> User Rights Assignment: Create global objects
My crappy memory leak
Posted by Terje Skulstad in Software, Windows on April 15th, 2009
For 3 weeks we had trouble with our server. Usually this server operates very stable, but every Wednesday we had to reboot it due to nobody being able to access the Outlook Web Access (OWA). Everyone got a http 404 error and if I looked at the services, everything looked normal and was up and running. A reboot solved the problem, but next week the problem was back.
After analyzing the event log I saw a number of events from the Application log:
event id: 8026 MSExchangeAL LDAP Bind was unsuccessful on directory (server DNS name) for distinguished name ”. Directory returned error:[0x51] Server Down.
I also had
event id: 1053 Userenv Windows cannot determine the user or computer name. (Not enough storage is available to complete this operation. ). Group Policy processing aborted.
event id: 7001 VssAdmin: Unable to create a shadow copy: Ran out of resources while running the command.
Command-line: ‘C:WINDOWSsystem32vssadmin.exe Create Shadow /AutoRetry=5 /For=?Volume{7166b389-8ec4-11dc-b352-0019bbca120c}’.
And from the System log:
event id: 5 Volsnap The shadow copy of volume D: could not be created due to insufficient non-paged memory pool for a bitmap structure.
event id: 2019 Srv The server was unable to allocate from the system nonpaged pool because the pool was empty.
After searching the Internet, I thought I had it figured, since we recently implemented shadow copies. So I requested a hotfix from Microsoft which addressed memory leaks in VSS http://support.microsoft.com/kb/940252.
But still, next week the error was back. And I know; I jumped the gun, since I should have done more testing to see if there was an actual increase I the counters MS refers to in the KB.
I all the situations, the http error was there long before these events appeared in the event log, and after further checking the MS knowledge base, I figured out why. According to http://support.microsoft.com/kb/933844/en-us IIS stops accepting connections when the nonpaged memory pool goes below 20MB. You will also have a number of “connection refused” in the httperr.log.
2008-05-21 07:18:44 – - – - – - – - – 1_Connections_Refused -
2008-05-21 07:19:44 – - – - – - – - – 1_Connections_Refused -
2008-05-21 07:20:44 – - – - – - – - – 1_Connections_Refused -
If http is critical you can bypass this by setting the registry key in the KB and restart the services. This gives you and extra 12MB of nonpaged memory so operations may continue while you try to find the root cause.
I then started with the tedious job of monitoring the memory for leaks using poolmon.exe. Since the error implied trouble with the nonpaged pool, I concentrated on this. An hour after booting Task Manager showed that the nonpaged pool was 65888K (about 11 AM), 5 hours later, the counter showed 74700K. When I came back the day after at 9 AM, the counter had reached 95960K of nonpaged memory and the counter kept going up without any apparent reason.
Not being very experienced in troubleshooting memory leaks the poolmon output didn’t give me much of an idea, since the counter that kept going up are counters that seem to incorporate several items. MMCM, File and Thre where the ones that seemed to increase the most. Further checking and an excellent post in an MSN blog http://blogs.msdn.com/sudeepg/archive/2007/09/11/iis-not-serving-pages-page-cannot-be-displayed.aspx pointed me in the right direction. The Thread counter represent Thread objects so further checking of processes with a lot of threads or handles could be worthwhile. Bringing up this showed that two processes named statusclient.exe which belongs to HP Printers had more handles than the total of all other processes.

Figure 1 Process Explorer showing processes sorted by handles. Cropped for size reasons
After killing these two processes I expected that nonpaged memory should drop instantly, but instead the utilization dropped slowly and within the first hour, it had dropped from 95960K to 86700K. Checking again a couple of hours later, nonpaged memory use had dropped to 82632K and actually seemed to keep dropping.
The process statusclient.exe doesn’t seem to use much memory by itself but in some way ties up nonpaged memory through its handles. Killing it made the memory count drop considerably.
As a test, I decided to start up the statusclient.exe again to see if the count started to increase, but it still kept dropping!
At start point it had about a 100 handles and nonpaged memory was 82380K. After running for 2 hours the handle count had increased to 3996 and np memory was down to 78908K
![]()
Figure 2 Statusclient.exe handles after 2 hours

Figure 3 Nonpaged pool 2 hours after starting Statusclient.exe
After 21 hours, the handle count has increased to 42382. Nonpaged memory is still down and is now running at 77484K.
![]()
Figure 4 Statusclient.exe handles after 21 hours

Figure 5 Nonpaged pool after 21 hours
I now decided to restart the process and also establish a second and third RDP connection to the server to launch a second instance of statusclient.exe to see what happens.
I checked the handles again after 9 hours
01:40 NonPaged Pool memory 182196
Session 0 123372 handles
Session 1 130018 handles
Session 2 129845 handles
01:45 kill session 1 statusclient.exe 182196 immediate drop to 178980 NPM and the a gradual drop to 178928.
02:00 NP memory 182196
Session 0 123829
Session 2 130389
02:00 kill session 2 statusclient.exe 178928 immediate drop to 159644 NPM and the a further drop to 158440
Killing the last session resulted in a further drop in the nonpaged pool memory, and remaining stable.
Conclusion
This error was probably the result of someone installing the wrong printer driver on the server (I’m innocent!). I haven’t checked with HP, but I’m assuming it was never intended for use on a server OS. Selecting the right printer driver is vital to achieve stability.
—Terje Skulstad—
This is a repost of a previously published article due to transition to WordPress
Monitor uptime using SNMP
Posted by Terje Skulstad in Cross platform, Software, Windows on April 14th, 2009
Recently had a question if we could monitor uptime in some way. I found out that SNMP was probably the easiest way to go. Using the SNMP value system.sysUpTime.sysUpTimeInstance (OID .1.3.6.1.2.1.1.3.0) you can list the value. We use Nimbus with and use the snmpget probe to get the value, but any SNMP tool should do. It might look a little strange, because it monitors in what’s called timeticks, which are 100th of a second. So 1 hour equals 60 minutes * 60 seconds * 100 milliseconds = 360000 timeticks. My alarm triggers when the server hasn’t rebooted for 24.5 hours (8820000 timeticks) and sends an alarm to the console.
In Nimbus I didn’t get the alarm working if I had the “display timeticks as numeric value switch” off.
Hiding the Cancel button in Windows XP Service Pack 3 install (or No Cancel, Back and Finish)»
Posted by Terje Skulstad in Software, Windows on April 6th, 2009
Yesterday I made my first AutoIT script. Excellent tool for tweaking with installs (and other windows) to make them more suitable for your needs. Go to http://www.autoitscript.com/ for the tool. Best of all, it’s free
To make the button go away create a new AutoIT script and use the code below. Note: This script was developed for the Norwegian version of SP3 and translated to English. Since I haven’t tested the script on that version, I cannot guarantee that the Windows titles and button caption are 100% correct .
Code:
;Hides the AutoIT icon
Opt(“TrayIconHide”,1)
; 1st section gives the user a warning that the sevice pack install will start
$PID=SplashTextOn(“INFO from IT”, “Service Pack 3 install starting. Install time approximately 20 – 30 minutes and the machine will reboot automatically after the install”, 250, 200, -1, -1, 4, “10″)
Sleep(10000)
SplashOff()
ProcessWaitClose($PID)
; 2nd section is the actual run of the SP3. Runs in passive mode which basically auto accept the license agreement and sets the uninstall folder to default. I also set the /forcerestart to ensure that install is complete. This is of course optional.
Run ( “P:SPXP_SP3_NORi386updateupdate.exe /passive /forcerestart” )
; Wait for the SP3 window to be active
WinWaitActive( “Software Update Installation Wizard”, “” )
; Set the SP3 window active if it doesn’t have focus.
If Not WinActive(“Software Update Installation Wizard”,”") Then WinActivate(“Software Update Installation Wizard”,”")
; Hides the Cancel button
ControlHide ( “Software Update Installation Wizard”, “”, 2 )
; Hides the back button (not really necessary because it’s greyed out, but gives a cleaner look)
ControlHide ( “Software Update Installation Wizard”, “”, 12323 )
; Finish button, same reason as Back button
ControlHide ( “Software Update Installation Wizard”, “”, 12325 )

Figure 1: Standard SP3 install window with buttons
Figure 2: Running with buttons removed
All finished!!!
This is a repost of a previously published article due to transition to WordPress
Free screen capture with Greenshot
Posted by Terje Skulstad in Software, Windows on April 6th, 2009
For a completely free and easy to use screenshot capture, you should give Open Source Greenshot a go. It easy to use and has some advanced features like auto filenaming, save directly to file. When you do the capture, you get a crosshair and the area you selct has a green tint (aka Greenshot I guess) and you can see how many pixels you’ve captured.
Here’s a selection of screenshots from the prog
This program covers my needs for a good screen capture program. I’ve used a couple og others like MWSnap and GadWin Printscreen, but I think this one is easier to use. I’ve never used Snagit myself and understand it has some extra features, but it costs about 50 bucks, and to capture a couple of screenshots from time to time it seems a lot.
If you really dig it consider donating, but this is open source and freeware so you’re not obligated.
Open Source is the best (for free)
Posted by Terje Skulstad in Linux, Software on April 4th, 2009
Open source is the best. There’s nothing quite like free software. I’m sitting on a machine running on Ubuntu, and would probably be more happy if I actually didn’t buy it with Windows Vista (and paid for the license). But this laptop just runs really slow with Vista and I needed something that would make it useful. Waiting 10 minutes for the machine to finish loading is just a drag.
This one is using a customized Ubuntu called Ultimate Edition 2 and is packed with software. For any user which needs to surf the Internet and write documents, Linux is an option, also for you, and best of all it doesn’t cost much (if anything).
The biggest problem I’ve discovered so far is that most commercial software is written for Windows, and only Windows…but Wine comes to the rescue. A lot of programs can run through Wine, and Wine-Doors gives you some easy ways to install a number of applications.
Visit http://www.ubuntu.com foe more on Ubuntu, WineHQ http://winehq.org/ for Windows apps on Linux. Look at Ultimate Edition for a fully packed Linux, even with games!!!
New pages using WordPress
Posted by Terje Skulstad in Cross platform, Software on April 2nd, 2009
Hi all
Just installed WordPress to be my new publishing tool. Decided static pages was to much of a hassle, and a couple of others I tried just didn’ work out. I originally wanted to go for a Norwegian developed tool called EZ Publish. It looked really cool, and easy to use + it had som cool features. Have a look at their homepage if you want to look at it http://ez.no/. I couldn’t use it since my ISP one.com support some of the settings/requirements for MySQL.
Also tried Xoops, but had to give it up. Looks very good, but poorly documented and I don’t really want to learn all that much about web publishing, just use it. Finally I came over WordPress. Looks like an excellent tool, powerful, yet simple and well documented + getting started info which I love
installed 30 minutes ago, this is my first post and I’ve alredy change the theme.






