New issue
Advanced search Search tips

Issue 742244 link

Starred by 2 users

Issue metadata

Status: WontFix
Owner: ----
Closed: Jul 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 2
Type: Bug



Sign in to add a comment

ProductVersion in MSI file incorrect

Reported by bazi...@gmail.com, Jul 13 2017

Issue description

UserAgent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:54.0) Gecko/20100101 Firefox/54.0

Steps to reproduce the problem:
Function Get-MSIInfo
{
param(
    [parameter(Mandatory=$true)]
    [ValidateNotNullOrEmpty()]
    [System.IO.FileInfo]$Path,

    [parameter(Mandatory=$true)]
    [ValidateNotNullOrEmpty()]
    [ValidateSet("ProductCode", "ProductVersion", "ProductName", "Manufacturer", "ProductLanguage", "FullVersion" ,"Description")]
    [string]$Property
)
Process {
    try {
        # Read property from MSI database
        $WindowsInstaller = New-Object -ComObject WindowsInstaller.Installer
        $MSIDatabase = $WindowsInstaller.GetType().InvokeMember("OpenDatabase", "InvokeMethod", $null, $WindowsInstaller, @($Path.FullName, 0))
       $Query = "SELECT Value FROM Property WHERE Property = '$($Property)'"
        #$Query = "SELECT `Comments`,`Value` FROM Description "
        $View = $MSIDatabase.GetType().InvokeMember("OpenView", "InvokeMethod", $null, $MSIDatabase, ($Query))
        $View.GetType().InvokeMember("Execute", "InvokeMethod", $null, $View, $null)
        $Record = $View.GetType().InvokeMember("Fetch", "InvokeMethod", $null, $View, $null)
        $Value = $Record.GetType().InvokeMember("StringData", "GetProperty", $null, $Record, 1)

        # Commit database and close view
        $MSIDatabase.GetType().InvokeMember("Commit", "InvokeMethod", $null, $MSIDatabase, $null)
        $View.GetType().InvokeMember("Close", "InvokeMethod", $null, $View, $null)           
        $MSIDatabase = $null
        $View = $null

        # Return the value
        return $Value
    } 
    catch {
        Write-Warning -Message $_.Exception.Message ; break
    }
}
End {
    # Run garbage collection and release ComObject
    [System.Runtime.Interopservices.Marshal]::ReleaseComObject($WindowsInstaller) | Out-Null
    [System.GC]::Collect()
}
}

Get-MSIInfo -Path 'D:\GoogleChromeStandaloneEnterprise64.msi' -Property "ProductVersion"
Get-MSIInfo -Path 'D:\---googlechromestandaloneenterprise64-56.0.2924.87.msi' -Property "ProductVersion"

This script as reference point to reproduce  
The problem can be described this way ProductVersion contain wrong number which not matching with Real Build number of google chrome

http://helpnet.installshield.com/installshield19helplib/helplibrary/IHelpPropReference.htm

What is the expected behavior?
Correct  version number in ProductVersion field of MSI file

What went wrong?
Life went wrong

Did this work before? No 

Chrome version: 59.0.3071.86 (Official Build) (64-bit)   Channel: stable
OS Version: 6.1 (Windows 7, Windows Server 2008 R2)
Flash Version: Shockwave Flash 26.0 r0

Please fix the version MSI field  ProductVersion it does not display real build version
 
Cc: pbomm...@chromium.org wfh@chromium.org grt@chromium.org
Labels: M-59

Comment 2 by bazi...@gmail.com, Jul 18 2017

 HI Google team is there any chance to verify this problem?

Labels: TE-NeedsTriageHelp
Adding TE-NeedsTriageHelp as it is installer related issue.

Thanks,

Comment 4 by grt@chromium.org, Jul 21 2017

Status: WontFix (was: Unconfirmed)
ProductVersion cannot be made to match Chrome's true version, so we do the best we can. Here's the situation:

- https://msdn.microsoft.com/library/windows/desktop/aa370859.aspx indicates that ProductVersion must be a 32-bit value in major.minor.build (8.8.16)
- Chrome's version number is a W.X.Y.Z number, where each component may be 32 bits.
- square peg: meet round hole :-)
- https://bugs.chromium.org/p/chromium/issues/detail?id=67348#c5 has the details for how we generate ProductVersion from a Chrome version.

Chrome's installer reaches into the registry to update the DisplayVersion values sometime shortly after an install so that you will see the W.X.Y.Z value in the Programs and Features control panel.

I'm not sure there's much else we can do here. Feel free to comment with any ideas you may have.
Issue 899426 has been merged into this issue.

Sign in to add a comment