MsiGetProductInfo failed to retrieve ProductVersion for package with Product Code = '{A43BF6A5-D5F0-4AAA-BF41-65995063EC44}'. Error code: 1608

16. July 2009

Thanks to Yao-cheng Teng @ http://groups.google.com/group/microsoft.public.sqlserver.setup/browse_thread/thread/3295c74da299d0e0?pli=1

The message I got is:
MsiGetProductInfo failed to retrieve ProductVersion for package with Product
Code = '{A43BF6A5-D5F0-4AAA-BF41-65995063EC44}'. Error code: 1608.

My Work-around steps are:
1. Reverse the GUID and search registry for 5A6FB34A. Then I got the
following result:

[HKEY_CLASSES_ROOT\Installer\Features\5A6FB34A0F5DAAA4FB1456990536CE44]
"MSXMLSYS"=""

[HKEY_CLASSES_ROOT\Installer\Products\5A6FB34A0F5DAAA4FB1456990536CE44]
"AdvertiseFlags"=dword:00000184
"Assignment"=dword:00000001
"AuthorizedLUAApp"=dword:00000000
"Clients"=hex:3a,00,00,00,00,00
"InstanceType"=dword:00000000
"Language"=dword:00000409
"PackageCode"="DE7407CFE6F395A47B7DFAD7A9682916"
"ProductName"="MSXML 6.0 Parser"
"Version"=dword:060a0469

[HKEY_CLASSES_ROOT\Installer\UpgradeCodes\7AB711B11CB5E91428E0D7F4F314C2B7]
"5A6FB34A0F5DAAA4FB1456990536CE44"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Installer\Features\5A6FB34A0F5DAAA4FB1 456990536CE44]
"MSXMLSYS"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Installer\UpgradeCodes\7AB711B11CB5E91 428E0D7F4F314C2B7]
"5A6FB34A0F5DAAA4FB1456990536CE44"=""

2. Delete two keys which have "UpgradeCodes" in them and leave others
untouched.
[HKEY_CLASSES_ROOT\Installer\UpgradeCodes\7AB711B11CB5E91428E0D7F4F314C2B7]
"5A6FB34A0F5DAAA4FB1456990536CE44"=""
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Installer\UpgradeCodes\7AB711B11CB5E91 428E0D7F4F314C2B7]
"5A6FB34A0F5DAAA4FB1456990536CE44"=""

3. Install SQL Server 2008 again, which is developer version for me, and it
went through without any hassle.

Databases

Disabling a row in a Grid based off of a value in the source

14. July 2009

So I needed to disable a row in a Grid based on a value in one of the columns. I found an example on Microsoft’s website and wanted to document it here:

Overwriting the ‘active’ method on the datasource:

public int active()
{
    int ret;

    ret = super();
    if (MDSI_ConfigurationLine.MDSI_ConfigurationLineStatusId == 'CLOSED')
    {
        MDSI_ConfigurationLine_ds.allowEdit(false);
    }
    else
    {
        MDSI_ConfigurationLine_ds.allowEdit(true);
    }

    return ret;
}

You need to make sure you have the else to allowEdit otherwise all of rows will be disabled.

Microsoft Dynamics Ax 2009

Comcast network update results

11. July 2009

So, Comcast just updated their network and I ran a speed test. Of course, I pay a little more for business service here at home but...

General