Thursday, February 11, 2010

Troubleshooting WinSXS (Side-by-Side) problems

While attempting to run a newly-installed OmniPage Pro 17 on a Windows 2008 x64 machine, I received a cryptic and frustrating error:

The application has failed to start because its side-by-side configuration is incorrect. Please see the application log for more details.

So, what do I do? I try re-running it. I try removing and reinstalling it. I run a repair from the Programs and Features Control Panel Applet. Nothing seems to be yielding any results.

So, I decide to check out the Application Log, like the dialog box suggested.

The Application Event Log has a little more detail about what's missing:

Activation context generation failed for "C:\Program Files (x86)\Nuance\OmniPage17\OmniPage17.exe". Dependent Assembly Microsoft.VC80.MFC,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.762" could not be found. Please use sxstrace.exe for detailed diagnosis.

So, I crack open a command prompt and run the following command:

sxstrace trace -logfile:omnipage.etl

The system returns the following message:

Tracing started. Trace will be saved to file omnipage.etl.
Press Enter to stop tracing...

I launch the application again, generate the error, tab back to the command prompt window, and then press Enter to stop tracing.

You can try to read the trace file, but it's not going to do you any good. You need to convert it to human-readable form with the following command:

sxstrace parse -logfile:omnipage.etl -outfile:omnipage.txt

After a few moments, you should receive a notification that it's complete:

Parsing log file omnipage.etl...
Parsing finished! Output saved to file omnipage.txt.

At that point, you can open up the result file (omnipage.txt in my case) to get a detailed analysis of what is wrong.

Begin Activation Context Generation.
Input Parameter:
Flags = 0
ProcessorArchitecture = Wow32
CultureFallBacks = en-US;en
ManifestPath = C:\Program Files (x86)\Nuance\OmniPage17\OmniPage17.exe
AssemblyDirectory = C:\Program Files (x86)\Nuance\OmniPage17\
Application Config File =
INFO: Parsing Manifest File C:\Program Files (x86)\Nuance\OmniPage17\OmniPage17.exe.
INFO: Manifest Definition Identity is (null).
INFO: Reference: Microsoft.VC80.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.762"
INFO: Reference: Microsoft.VC80.MFC,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.762"
INFO: Reference: Microsoft.Windows.Common-Controls,language="*",processorArchitecture="x86",publicKeyToken="6595b64144ccf1df",type="win32",version=""
INFO: Resolving reference Microsoft.VC80.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.762".
INFO: Resolving reference for ProcessorArchitecture WOW64.
INFO: Resolving reference for culture Neutral.
INFO: Applying Binding Policy.
INFO: No publisher policy found.
INFO: No binding policy redirect found.
INFO: Begin assembly probing.
INFO: Did not find the assembly in WinSxS.
INFO: Attempt to probe manifest at C:\Windows\assembly\GAC_32\Microsoft.VC80.CRT\8.0.50727.762__1fc8b3b9a1e18e3b\Microsoft.VC80.CRT.DLL.
INFO: Did not find manifest for culture Neutral.
INFO: End assembly probing.

The long and short of it is that OmniPage is looking for some C++ components that it can't find in the program files directory or the SxS manifest. Specifically, it can't find the x86 platform version of the C++ components. So, I download and install the Visual Studio 2005 C++ Redistributable package (which the application vendor should have bundled), and the problem is resolved.

You can download the components here:

Microsoft Visual C++ 2005 SP1 Redistributable Package (x86)

Microsoft Visual C++ 2005 SP1 Redistributable Package (x64)

Sunday, February 7, 2010

A Series of Unfortunate Events

While reading about and watching coverage of Sarah Palin's closing remarks at the Tea Party convention, I couldn't help but compare it to a car accident--you want to look away, but you can't.

While we all have the right--even duty--to criticize our leaders, I find it frustrating that she is speaks with vehemence about things of which she has little or no knowledge. Since it's now rumored that she may not have been the only one in the Governor's office, one must wonder how much of this opportunist's speech is her husband's thoughts.

Her speech was light on real details, quoting few specific policies or circumstances that she was criticizing. It's typical fiery rhetoric that panders to the audience. It's much easier to criticize than it is to offer solutions (look at this post, for example).

One of few specifics that she did mention was her perspective on trying the Christmas Day bomber in civilian courts. "Because that's not how radical Islamic extremists are looking at this. They know we're at war, and to win that war we need a commander in chief and not a professor of law standing at the lectern," she was quoted as saying.

She seems to have forgotten that under Bush, more than 200 alleged terrorists were tried and convicted in the civilian court system. Apparently, what was good for the goose isn't good for the gander. One interesting study from the Center for American Progress notes that terrorists tried in military tribunals get substantially less jail time.

In the case of Salim Hamdan, Osama bin Laden's driver, a military tribunal punished Hamdan with 5 years in prison. He was credited for time served, and only was only imprisoned for an additional 5 months after his conviction. Salim Hamdan is now running around free in Yemen. Similar is the case of David Hicks, who was convicted in a military tribunal of material support for terrorism. He now lives in Australia--a free man.

Contrast those with terrorists charged in criminal court. Ali Asad Chandia, convicted in civil criminal courts for driving a member of Pakistani extremist group Lashkar-e-Taibi from Washington National Airport and helping him ship packages containing paintball equipment back to Pakistan, was punished with 15 years in prison in 2006. John Walker Lindh, the "American Taliban," is also still serving out his 20-year sentence for providing material support to terrorists and being involved in a terrorist army faction.

Palin also made remarks criticizing President Obama for his foreign policy, stating that his policies don't recognize the true threats America faces.

Perhaps her memory needs a little jogging. There were reports all over the news from 2004 through 2006 of military leaders in Iraq begging for more troops, more armor, more weapons, and more equipment in general. And, even in 2008, well after "the surge," Gen. David McKiernan had asked for up to three additional combat brigades in Afghanistan--a request that President Bush ignored. President Obama committed 17,000 troops within two months after taking office. And, when General Stanley McChrystal asked in the now-famous "McChrystal Report" for another infusion of Troops in October 2009, Obama started preparing the citizens of the US to send more of their sons and daughters. He answered by announcing in November that he would sending an additional 34,000 troops to fulfill the General's request. It would appear (to me, at least), that President Obama takes the requests seriously and processes them in a timely fashion.

As Brad Woodhouse from the DNC was quoted in the Washington Post, "No one should take national security advice seriously from a person who told the world in 2008 that her qualifications in this area were that she could see Russia from her home state." Well played.

While in one moment calling President Obama a "charismatic guy with a teleprompter," she misspoke when reading from her notes in saying that U.S. policies might discourage those who "see Alaska as a beacon of hope" (presumably instead of America). Pot? Kettle? At least the charismatic guy can read.

The principles advocating smaller, more nimble government seem like laudable goals, but champions of this effort leave a sour taste in my mouth. If people like *that* support efforts like these, what else is lurking under the covers that I should know about?

At the end of the day, I admire grass-roots movements like the Tea Party that want to put control back in the hands of the people. While I'm not a Tea Partier, I do respect the mobilization that they have achieved. Palin was quoted as saying that the Republican party would do well to try to absorb as much of the Tea Party movement as possible. I think it would be more profitable to capture the fire into your own organization as opposed to trying to dilute your core principles to get more votes.

Many Democrats who see the Tea Party as an almost-off-the-map right organization, would welcome Palin's call to action. The truth for any party is that the more mass media coverage these growing fringe groups get, the more folks are driven to the other side.

Wednesday, February 3, 2010

Masterful Mojito

I like to make the kinds that people talk about. The ones that are so good, that you can't order them out any more.

As the days grow longer, my thoughts turn to summer. Yes, it's only February, but a great drink is always in season.

Masterful Mojito
1 1/2 oz Bacardi Superior Rum
1/4 oz Cointreau Orange Liqueur
3 tsp sugar
1 lime
Mint leaves

Quarter the lime. In a shaker, combine ice, Bacardi Superior, Cointreau, sugar, and the juice from one half of the lime. Shake until frosty. Gently muddle 12-14 fresh mint leaves in the bottom of a Collins glass with the juice from one lime quarter. Add 6-8 ice cubes to the glass and pour the contents of the shaker over the ice. Top off with club soda and a mint sprig and garnish with the remaining lime quarter.

Change it up a little bit by adding a splash of your favorite limoncello.

How to change the company name displayed in Windows Small Business Server 2008 Remote Web Workplace (RWW)

I recently found myself in a place where I had misspelled the name of a company during one of the SBS Setup Wizards and could not find where to change it.

The file that needs to be modified is C:\Program Files\Windows Small Business Server\Data\RWWConfig.xml

Look for the section that says signinorgname and change it to the correct spelling.

<?xml version="1.0" encoding="utf-8" ?>
<fileName>RWWPluginSBS, Version=, Culture=neutral, PublicKeyToken=31bf3856ad364e35</fileName>
<signinOrgName>Company Name</signinOrgName>
<signinUserBackgroundImage />
<orgLogo />

Tuesday, February 2, 2010

How to enable Outlook Logging

From time to time, we get customers complaining about Outlook POP3/SMTP problems. 99% of the time, the customer has configured Outlook incorrectly (wrong username/password, wrong server, wrong ports, etc). Enabling Outlook logging can help you make the most of your troubleshooting session.

To turn on Outlook logging:

1. Launch Outlook.
2. Navigate to Tools > Options.
3. Click the Other tab.
4. Under the General section, click the Advanced Options button.
5. Place a checkmark in the Enable logging checkbox.
6. Click OK three times, acknowledging that the settings will take effect next time you start Outlook.
7. Restart Outlook.
8. Retry the action that was causing the problem.

Now, where to find this elusive logfile?

If you're running Outlook 2000, 2002/XP, or 2003 on Windows 2000, 2003, or XP:
C:\Documents and Settings\%username%\Local Settings\Temp\OPMLOG.LOG.

If you're running Outlook 2007 on Windows 2000, 2003, or XP:
C:\Documents and Settings\%username%\Local Settings\Temp\Outlook Logging\OPMLOG.LOG.

If you're running Outlook 2007 on Windows Vista, Windows 7, or Windows 2008:
C:\Users\%username%\AppData\Local\Temp\Outlook Logging\OPMLOG.LOG.

For more information, check out the following Microsoft articles:

What is the Enable logging (troubleshooting) option?

How to enable transport logging in Outlook