Carl's blog

Exchange 2010 GAL problems. address book service will not start – not compatible with the version of windows you’re running.

by on Jul.18, 2012, under Computer Stuff

How very bizarre.

Migrating from Exchange 2003 to 2010 SP2. Somewhere along the way – after uninstalling Exchange 2003, we started having directory / GAL problems. New Outlook profiles could not be set up, and the GAL could not be downloaded into already-working Outlooks.

After some exploration (and fixing some Public Folder related issues ( ) I noticed that the Microsoft Exchange Address Book service was not started. I tried to start it, and found Event ID 7000 from the service control manager, with description

“The Microsoft Exchange Address Book service failed to start due to the following error:
This version of Microsoft Exchange Address Book is not compatible with the version of Windows you’re running. Check your computer’s system information to see whether you need a x86 (32-bit) or x64 (64-bit) version of the program, and then contact the software publisher.”

I looked at the executable path, and went to check out the properties of the file (“C:\Program Files\Microsoft\Exchange Server\V14\bin\Microsoft.Exchange.AddressBook.Service.exe”), and I noticed there were no PE properties / attributes, and also, that the file was only 2kb in size. Actuallly the same size as the .config file alongside it. Weird. I thought I’d take a look inside.
I opened up Notepad, and drag’n’dropped the EXE file into notepad, and sure enough, the .exe file was actually the same as the .config file.

It seems that one of the updates has incorrectly modified the wrong file. It has overwritten Microsoft.Exchange.AddressBook.Service.exe with what should instead be in Microsoft.Exchange.AddressBook.Service.exe.config.

The server started out as Exchange 2010 RTM, then it had SP1 applied, and then SP2. This problem was noticed shortly after SP2.

I dug out the correct .exe file from the SP2 extracted files, under setup\serverroles\common, and replaced it, then started the service. All is now well again.

Comments Off on Exchange 2010 GAL problems. address book service will not start – not compatible with the version of windows you’re running. more...

Linksys / Cisco SPA8000 VoIP gateway and multiple channels/lines with a single SIP account.

by on Apr.24, 2012, under Computer Stuff

Linksys / Cisco SPA8000 VoIP gateway. Multiple channels/lines with a single SIP account.
It’s not possible, but here’s a great solution.
The SPA8000 is designed to be fed by a VoIP PBX. It’s not designed to be fed by a multi-channel SIP trunk from an ITSP. The scenario for which the SPA8000 was designed is a corporate environment where you want to support a number of analog devices, but use your SIP PBX. e.g. say you want to have 8 DECT cordless phones on your system, without having lots of ATAs.
The solution: put an Asterisk PBX in between the SPA8000 and your ITSP.
The perfect candidate for this job is the Atcom IP01 Blackfin based device. They’re less than £100.
You should then set each line of the SPA8000 to connect to an extension (701, 702, 703 etc.) of the Asterisk PBX. You can set up the hunt/ring groups from the Asterisk PBX.

Note: firmware 6.1.3 adds support for “Trunks” and “Trunk Groups”. I beleive this should achieve what is desired, however I like the flexibility of the Asterisk box, and the customer is enjoying the voicemail features provided by it.

Comments Off on Linksys / Cisco SPA8000 VoIP gateway and multiple channels/lines with a single SIP account. more...

O’Grady’s Technical Services.

by on Mar.13, 2012, under Uncategorized

O’Grady’s Technical Services are Gas Safe registered (what was CORGI) gas/heating/plumbing/boiler repair engineers in Eccles, Manchester. My associate just did them a simple website with WordPress and I’m here making this post to try to help promote it on Google.

Comments Off on O’Grady’s Technical Services. more...

SBS 2008 / 2011 automatic backup to RDX / RD1000, without CIFS/SMB/Shared Folders.

by on Dec.01, 2011, under Computer Stuff

The scheduled wbadmin backup to \\server\rd1000 stopped working, so I looked into things a bit more and have now changed my servers to backup to the drive directly. wbadmin behaves as if it’s backing up to a DVD or something, and we have to pipe some input into it.

It goes something like this:
Make a file called c:\unattend.txt, which contains:


(C on one line, and Y on another). This will be piped into the wbadmin command’s input, because wbadmin prompts us to “press C to continue”, and “press Y if you’re sure”.

Then the backup command looks like this:

wbadmin start backup -backuptarget:d: -allcritical -quiet <c:\unattend.txt >>”C:\Company Shared Folder\BackupLog.txt”

The -quiet is important because we are relying on very specific behavior/prompts, to which our unattend.txt file responds. i.e. without the -quiet, we’ll not get the “C” and “Y” prompts and so our unattend.txt would not be providing the correct input.

In the above case, the RDX drive is D:

The output, for logging purposes, is appended to C:\Company Shared Folder\BackupLog.txt

2 Comments more...

pctrades2011 FAKE COUNTERFEIT SOFTWARE! fake Office 2003 Pro eBay alert! PayPal name Tom Smith from Bromley.

by on Nov.16, 2011, under Computer Stuff

Dirty lying scammer. Sells fakes / counterfeit software and refuses to refund.
See here:

Comments Off on pctrades2011 FAKE COUNTERFEIT SOFTWARE! fake Office 2003 Pro eBay alert! PayPal name Tom Smith from Bromley. more...

How to automatically detect removable drive’s assigned letter in backup scripts.

by on Feb.24, 2011, under Computer Stuff

@echo off
if %1.==. goto noparams
goto drvid


for %%a in (d e f g h i j k l m n o p q r s t u v w x y z) do call %0 %%a

echo Checking if backup drive is mounted as drive %1:
if exist %1:\drvid.txt goto found
goto end

Set DRVID=%1
echo Drive found as %DRVID%:



5 Comments more...

Super easy way how to reset secure channel / computer account in Active Directory domain.

by on Jan.07, 2011, under Computer Stuff

I have a 2008 R2 server joined to an SBS 2003 domain. Secure channel has somehow become broken. Netdom gives access denied when run from either DC or member server. I could change to a workgroup, reboot, then re-join domain, and pray that I don’t lose remote access along the way, or I could use this trick:

Are you ready? It’s so simple.. 😉

Go to change the domain, and simply change it from the DNS domain name (e.g. domain.local), to the netbios domain name (e.g. DOMAIN). You will probably need to be on the same broadcast domain (LAN segment), i.e. not over a VPN or WAN, for the netbios domain to be found (unless you have WINS running I suppose).

So, the machine is joined to domain.local, but the secure channel is broken. I just go to the ‘Computer Name’ tab of ‘System Properties’, click Change, and backspace out the .local from the domain name and press OK. It’s like I’m joining a different domain but it’s the same one really. You get the “Welcome to the domain. You must restart this computer for the change to take effect” message. Reboot and it’s all done. As usual the DNS domain name will be shown on the computer name tab after the reboot. Nothing has changed except that the secure channel has been re-established.

Comments Off on Super easy way how to reset secure channel / computer account in Active Directory domain. more...

Linux/Unix (X) as an RDP (Remote Desktop Protocol) Server?

by on Dec.11, 2010, under Computer Stuff

Wow. This took me totally by surprise, and it seems to work very well. There’s no sound redirection or clipboard, but basically you connect to the Linux machine using an RDP client (Microsoft Remote Desktop Connection, or Terminal Server Client), and instead of getting a Windows logon box, you get an xrdp one. You choose a session and hey presto you have a Gnome or KDE session, through RDP!

It has two ways of working. The first, and easiest to get going, is that it uses vncserver (the VNC X Server) as the actual X server, and the xrdp program grabs the vnc display and RDPs it over to you. So you have the performance of RDP.
The other way is that it uses an RDP X server, so I suppose you could call that native X-RDP rather than VNC served RDP. This is a touch more complicated, and I was unable to get the svn version of the X11rdp Xserver to compile. There is a precompiled binary of what might be an old version at though.

The precompiled binary was the only way I could get X11rdp to work (that is native RDP – I got the vnc/rdp to work almost right away)

Let me clarify some points:

xrdp is the name of the project, and also the name of one of the binary files that deals with RDP and integrates with the VNC server and sends it to you through RDP.
X11rdp is the name of the special RDP Xserver that is another part of the project, which skips out vnc altogether. When you grab the (small) sourcecode off the project website, and do the make/make install, it will not build X11rdp.
X11rdp is also called “Xserver” within the project.
You will see in /usr/local/xrdp/sesman.log something like: “No such file or directory” if you are trying to use X11rdp server (sesman-X11rdp) but don’t have the X11rdp Xserver compiled/installed, or if you are trying to use VNC (sesman-Xvnc) but don’t have vncserver installed. VNC server will be provided by your distribution (Fedora, Ubuntu..) so is very easy to get. X11rdp is made by the xrdp project, so is not so easy, but the precompiled binary seemed to work OK for me.

The project’s website is very low priority, and does not reflect the true activity of the project.

The website is at

I’ve just had a look, and development activity is moving along well! I’m going to have another look at this!

5 Comments more...

Recovering from Windows registry hive corruption, the smart way.

by on Dec.11, 2010, under Computer Stuff

I like this trick. Every time I do it, I think about all those people doing repair installs (in-place upgrades).

It works pretty much every time unless the filesystem is really truly screwed, in which case you need a backup, say from the system restore directory (System Volume Information), as per this knowledgebase article (don’t bother with the recovery console though, use your USB to IDE or USB to SATA cable and fix it from your laptop.)

Here are the symptoms. You try to start up your Windows 2000/XP (Vista too?) computer and you get a message, white text on black background:

Windows could not start because the following file is missing or corrupt: \WINDOWS\SYSTEM32\CONFIG\SYSTEM


Windows could not start because the following file is missing or corrupt: \WINDOWS\SYSTEM32\CONFIG\SOFTWARE

Sometimes, the message is cut short, so you might see “\WINDOWS\SYSTEM32\CONFIG\SYS” or similar. Hint: If it’s really cut short, and you can’t see if it’s SOFTWARE or SYSTEM, do the following procedure on both files. Whichever one is identified as having been repaired, well that’s the one that was broken 😉

Anyway, how to fix it in 2 minutes:

Use your USB to IDE/SATA adapter cable, and connect the broken machine’s hard drive to your laptop, or your spare PC or whatever. You don’t have to use a USB to IDE/SATA adapter cable – if you’re a person at home with another PC you can stick the drive on a spare IDE or SATA channel. You just need to get that hard drive into a working Windows XP computer for a few minutes.

Windows will mount the broken computer’s hard drive as, say E: or F:. Make sure you have your computer set to show hidden files and also system files. To check this, go into My Computer -> Tools -> Folder Options, -> View Tab, and select “Show hidden files”, and make sure “Hide protected operating system files” is not ticked.

First things first, run chkdsk on that drive, after all it is most likely filesystem corruption that has caused the registry to become corrupt in the first place. In My Computer, right-click the broken computer’s drive and choose properties. Go to tools, “Check Now”, put a tick in only the first box (Automatically fix filesystem errors), and click start. Let that finish before continuing.

Here’s where the magic happens. Go to start -> run, and type regedit [enter]. This will launch the registry editor on your computer. In the registry editor, highlight HKEY_LOCAL_MACHINE, and then go to File -> Load Hive. Find the file that is “missing or corrupt” (from your error message earlier), and choose to load that. It will be in E:\(or F:\)Windows\System32\Config, and will be called just SOFTWARE or SYSTEM. Regedit will ask you to name the hive, just type “badpc” (any old garbage will do – it’s only temporary).

Regedit will say “One or more files containing the registry were corrupt and had to be recovered by use of log files. The recovery was successful.” You have just repaired the registry! Now you need to Un-load that hive, so highlight that “badpc” hive that you can now see under HKEY_LOCAL_MACHINE, and go to File -> Unload Hive.

You now just need to put that hard drive back in the broken computer, which hopefully won’t be broken any more! If you used a USB to SATA or USB to IDE cable from your laptop, make sure you use the “Safely remove hardware” icon in the system tray next to the clock to safely remove the hard drive, else you may cause filesystem corruption again. Alternatively just shut your laptop/working computer down properly and remove the hard drive once it’s shut down.

All done.

Some background:

The registry is a database. It has transaction log files which can be used to recover from corruption. It would appear that the early Windows boot process is not able to work with those log files, but regedit (and Windows itself further on in the boot process) is.

28 Comments :, more...

Vista: Stop: c000021a {Fatal System Error}, The initial session process or system process terminated unexpectedly.

by on Dec.11, 2010, under Computer Stuff

“Stop: c000021a {Fatal System Error}
The initial session process or system process terminated unexpectedly with a status of 0×000000000 (some more hex codes)”

Can’t repair this. Trying to pinpoint source of problem.

System Restore through Repair Environment is failing. Replacing registry files with those from RegBack hasn’t helped.

Clean install of Vista, moved contents of system32\config from broken install to clean one, also moved old Users directory, and problem still exhibited. Must be a registry/configuration issue then, not system files.

Now going to try to see if I can pin it down to either System registry or Software.

Update: It is fixed. The problem was within the SOFTWARE hive. I moved all the clean install stuff (Windows , Program Files, Users, ProgramData) to a folder called “clean”, and move all the folders out of Windows.old back into C:\ , so in effect returning the machine back to its original state before the clean install. I then replaced SOFTWARE with SOFTWARE.OLD and all is well.

Something within the Software registry hive was wrong/broken. Hope this helps someone. Not sure why the SOFTWARE hive out of RegBack was no good.

At least we know from now on that troubleshooting “Stop: c000021a {Fatal System Error}, the initial session process or system process terminated unexpectedly.” should be done from within HLKM\Software of the registry, or just replacing the Software hive with a good backup. Earlier in the process I opened regedit from the Repair Environment’s command prompt, and loaded the Software Hive, but it looked bare. There were only Microsoft subkeys, nothing else. Either this is because of the fault, or perhaps it’s a Vista security feature? (no.. it’s not a security feature – see below):

Another update: I have taken the bad software hive, and the good working one (software.old), and loaded them up into Regedit on my XP machine to compare.

Both files are around 45mb, but the bad one is completely bare except for a couple of Microsoft subkeys. I wonder what caused this?

Perhaps I am barking up the wrong tree. Maybe the HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Reliability\Srt key means “system restore”, and this bare registry is normal during a system restore. Perhaps the registry is supposed to be bare until System Restore finishes after the reboot, and the bare registry wasn’t the actual cause of the stop error. Perhaps the stop error was triggered during System Restore’s finishing up. Who knows. I suppose I could create a restore point on the machine now, and see if System Restore causes the Stop error to return. I might do that.

At least for now, the solution here was to replace software with software.old.

6 Comments more...

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!


A few highly recommended websites...