none
Error: Setup has detected that the file has changed since it was initially published.

    Question

  • I'm hoping someone can help me here, I've got a ClickOnce install problem that I can't make head nor tail of - and Google doesn't seem to want to help. Essentially I have a WinForms app that have the framework and SQL Express as pre-requisites, but everytime I try to install the app it complains about a file having been changed since it was initially published. Everything is based off Beta 2, so framework 2.0 beta 2, SQL Express beta 2 and devstudio 2005 beta 2.

    If anyone has any ideas then it's be much appreciated. The log file it produces is below...

    Setup: Initializing Initialize UI
    Looking for font: MS Shell Dlg
    Found font: MS Shell Dlg
    Looking for font: MS Shell Dlg
    Found font: MS Shell Dlg
    Setup: Initializing the Application
    Setup: Initializing Install Engine
    InstallEngine: Setting property ProcessorArchitecture=Intel
    InstallEngine: Setting property VersionNT=5.1.2
    InstallEngine: Setting property AdminUser=true
    FileManager: Getting 'dotnetfx\dotnetchk.exe' from file map
    FileManager: Getting 'SqlExpress\SqlExpressChk.exe' from file map
    Setup: Initializing Install UI
    Looking for font: MS Shell Dlg
    Found font: MS Shell Dlg
    Looking for font: MS Shell Dlg
    Found font: MS Shell Dlg
    Package: Running checks for package '.NET Framework 2.0 Beta', phase 1
    FileManager: Getting 'dotnetfx\dotnetchk.exe' from file map
    ExternalCheck: Running external check with command line "C:\DOCUME~1\Andy\LOCALS~1\Temp\VSD59.tmp\dotnetfx\dotnetchk.exe"
    ExternalCheck: Process exited with code 0
    RegistryCheck: Reading value 'Version' of registry key 'HKLM\Software\Microsoft\Internet Explorer'
    RegistryCheck: Read string value '6.0.2900.2180'
    Package: .NET Framework 2.0 Beta RunCheck result: 2
    Package: Running checks for package 'SQL Server 2005 Express Edition Beta', phase 1
    FileManager: Getting 'SqlExpress\SqlExpressChk.exe' from file map
    ExternalCheck: Running external check with command line "C:\DOCUME~1\Andy\LOCALS~1\Temp\VSD59.tmp\SqlExpress\SqlExpressChk.exe"
    ExternalCheck: Process exited with code 1
    Package: SQL Server 2005 Express Edition Beta RunCheck result: 2
    Setup: Getting package count
    Setup: Package count = 2
    Looking for font: MS Shell Dlg
    Found font: MS Shell Dlg
    Looking for font: MS Shell Dlg
    Found font: MS Shell Dlg
    Setup: Copying files to temporary directory "C:\DOCUME~1\Andy\LOCALS~1\Temp\VSD59.tmp\"
    FileManager: Getting 'dotnetfx\instmsia.exe' from file map
    FileManager: Getting 'dotnetfx\WindowsInstaller-KB884016-v2-x86.exe' from file map
    FileManager: Getting 'dotnetfx\dotnetfx.exe' from file map
    FileManager: Getting 'dotnetfx\dotnetchk.exe' from file map
    FileManager: Getting 'SqlExpress\SqlExpressChk.exe' from file map
    FileManager: Getting 'SqlExpress\sqlexpr.exe' from file map
    Setup: Downloading files to "C:\DOCUME~1\Andy\LOCALS~1\Temp\VSD59.tmp\"
    FileManager: Getting 'dotnetfx\instmsia.exe' from file map
    FileManager: Downloading 'http://go.microsoft.com/fwlink/?LinkId=37285' from 'dotnetfx\instmsia.exe' to 'C:\DOCUME~1\Andy\LOCALS~1\Temp\VSD59.tmp\'
    FileManager: Getting 'dotnetfx\instmsia.exe' from file map
    Wintrust: WinVerifyTrust returned 0
    WinTrust: File trusted
    FileManager: Getting 'dotnetfx\WindowsInstaller-KB884016-v2-x86.exe' from file map
    FileManager: Downloading 'http://go.microsoft.com/fwlink/?LinkId=37287' from 'dotnetfx\WindowsInstaller-KB884016-v2-x86.exe' to 'C:\DOCUME~1\Andy\LOCALS~1\Temp\VSD59.tmp\'
    FileManager: Getting 'dotnetfx\WindowsInstaller-KB884016-v2-x86.exe' from file map
    Wintrust: WinVerifyTrust returned 0
    WinTrust: File trusted
    Error: Setup has detected that the file 'C:\DOCUME~1\Andy\LOCALS~1\Temp\VSD59.tmp\dotnetfx\WindowsInstaller-KB884016-v2-x86.exe' has changed since it was initially published.
    Thursday, October 27, 2005 11:38 AM

Answers

  • The same URL is being used in the release version of the product as was used for Beta 2. As a result, apps deployed using Beta 2 are now seeing this error because it is downloading the RTM version of dotnetfx.exe.

    There are two possible workaround, but either require a republishing.

    1. You can republish your app with "Same Location", so that the Beta 2 DotNetFx is put on your website and downloaded. If someone has the RTM DotNetFx installed, then the bootstrapper shouldn't download or try to install the Beta 2 version.
    2. You can download the RTM DotNetFx.exe and copy it to the Bootstrappe DotNetFx package directory. Then republish. This will cause the bootstrapper to build the local file hash into the bootstrapper, and as long as the certs also match up, which I think they should, you should be up and running again.

     

    Friday, December 02, 2005 6:47 PM

All replies

  • I am having a similar issue with the ClickOnce deployment except my install appears to bomb out on the .NET Framework 2.0 installation.  Any help would be appreciated.

    The following properties have been set:
    Property: [AdminUser] = true {boolean}
    Property: [ProcessorArchitecture] = Intel {string}
    Property: [VersionNT] = 5.0.4 {version}
    Running checks for package '.NET Framework 2.0', phase BuildList
    Running external check with command line "C:\DOCUME~1\gshearer\LOCALS~1\Temp\VSD3C09.tmp\dotnetfx\dotnetchk.exe"
    Process exited with code 0
    Setting value '0 {int}' for property 'DotNetInstalled'
    Reading value 'Version' of registry key 'HKLM\Software\Microsoft\Internet Explorer'
    Read string value '6.0.2800.1106'
    Setting value '6.0.2800.1106 {string}' for property 'IEVersion'
    The following properties have been set for package '.NET Framework 2.0':
    Property: [DotNetInstalled] = 0 {int}
    Property: [IEVersion] = 6.0.2800.1106 {string}
    Running checks for command 'dotnetfx\instmsia.exe'
    Result of running operator 'ValueExists' on property 'VersionNT': true
    Result of checks for command 'dotnetfx\instmsia.exe' is 'Bypass'
    Running checks for command 'dotnetfx\WindowsInstaller-KB893803-v2-x86.exe'
    Result of running operator 'ValueExists' on property 'Version9x': false
    Result of running operator 'VersionLessThan' on property 'VersionNT' and value '5.0.3': false
    Result of running operator 'VersionGreaterThanOrEqualTo' on property 'VersionMsi' and value '3.0': true
    Result of checks for command 'dotnetfx\WindowsInstaller-KB893803-v2-x86.exe' is 'Bypass'
    Running checks for command 'dotnetfx\dotnetfx.exe'
    Result of running operator 'ValueNotEqualTo' on property 'DotNetInstalled' and value '0': false
    Result of running operator 'ValueEqualTo' on property 'AdminUser' and value 'false': false
    Skipping FailIf because Property 'Version9X' was not defined
    Result of running operator 'VersionLessThan' on property 'VersionNT' and value '5.0.3': false
    Result of running operator 'ValueNotExists' on property 'IEVersion': false
    Result of running operator 'VersionLessThan' on property 'IEVersion' and value '5.01': false
    Result of running operator 'ValueNotEqualTo' on property 'ProcessorArchitecture' and value 'Intel': false
    Result of checks for command 'dotnetfx\dotnetfx.exe' is 'Install'
    '.NET Framework 2.0' RunCheck result: Install Needed
    EULA for components '.NET Framework 2.0' was accepted.
    Copying files to temporary directory "C:\DOCUME~1\gshearer\LOCALS~1\Temp\VSD3C09.tmp\"
    Downloading files to "C:\DOCUME~1\gshearer\LOCALS~1\Temp\VSD3C09.tmp\"
    (12/1/2005 7:47:42 AM) Downloading 'dotnetfx\dotnetfx.exe' from 'http://go.microsoft.com/fwlink/?LinkId=37283' to 'C:\DOCUME~1\gshearer\LOCALS~1\Temp\VSD3C09.tmp\'
    Download completed at 12/1/2005 7:47:42 AM
    Verifying file integrity of C:\DOCUME~1\gshearer\LOCALS~1\Temp\VSD3C09.tmp\dotnetfx\dotnetfx.exe
    WinVerifyTrust returned -2146762749
    Subject form unknown
    Running checks for package '.NET Framework 2.0', phase BeforePackage
    Running external check with command line "C:\DOCUME~1\gshearer\LOCALS~1\Temp\VSD3C09.tmp\dotnetfx\dotnetchk.exe"
    Process exited with code 0
    Setting value '0 {int}' for property 'DotNetInstalled'
    Reading value 'Version' of registry key 'HKLM\Software\Microsoft\Internet Explorer'
    Read string value '6.0.2800.1106'
    Setting value '6.0.2800.1106 {string}' for property 'IEVersion'
    The following properties have been set for package '.NET Framework 2.0':
    Property: [DotNetInstalled] = 0 {int}
    Property: [IEVersion] = 6.0.2800.1106 {string}
    Running checks for command 'dotnetfx\dotnetfx.exe'
    Result of running operator 'ValueNotEqualTo' on property 'DotNetInstalled' and value '0': false
    Result of running operator 'ValueEqualTo' on property 'AdminUser' and value 'false': false
    Skipping FailIf because Property 'Version9X' was not defined
    Result of running operator 'VersionLessThan' on property 'VersionNT' and value '5.0.3': false
    Result of running operator 'ValueNotExists' on property 'IEVersion': false
    Result of running operator 'VersionLessThan' on property 'IEVersion' and value '5.01': false
    Result of running operator 'ValueNotEqualTo' on property 'ProcessorArchitecture' and value 'Intel': false
    Result of checks for command 'dotnetfx\dotnetfx.exe' is 'Install'
    '.NET Framework 2.0' RunCheck result: Install Needed
    Verifying file integrity of C:\DOCUME~1\gshearer\LOCALS~1\Temp\VSD3C09.tmp\dotnetfx\dotnetfx.exe
    WinVerifyTrust returned -2146762749
    Subject form unknown
    Error: Setup has detected that the file 'C:\DOCUME~1\gshearer\LOCALS~1\Temp\VSD3C09.tmp\dotnetfx\dotnetfx.exe' has changed since it was initially published.
    Thursday, December 01, 2005 2:28 PM
  • The same URL is being used in the release version of the product as was used for Beta 2. As a result, apps deployed using Beta 2 are now seeing this error because it is downloading the RTM version of dotnetfx.exe.

    There are two possible workaround, but either require a republishing.

    1. You can republish your app with "Same Location", so that the Beta 2 DotNetFx is put on your website and downloaded. If someone has the RTM DotNetFx installed, then the bootstrapper shouldn't download or try to install the Beta 2 version.
    2. You can download the RTM DotNetFx.exe and copy it to the Bootstrappe DotNetFx package directory. Then republish. This will cause the bootstrapper to build the local file hash into the bootstrapper, and as long as the certs also match up, which I think they should, you should be up and running again.

     

    Friday, December 02, 2005 6:47 PM
  • On the other hand, the Windows Installer one is a similar problem, and slightly different. There was an updated installer put up that is causing this problem in some cases. The workaround/fixes are pretty much the same as I described in the other message, you just might need to get WindowsInstaller-xxxxxxxx.exe instead.

     

    Friday, December 02, 2005 6:49 PM

  • Hi David Guyer.

     I saw your reply regarding Error: Setup has detected that the file has changed since it was initially published.

    I have almost same problem, my problem is when i try to install one application from website to my system, at the time of installation it will give me error message:

     setup has detected that the file    'C: DOCUME~1\ADMINI~1.APO\LOCALS~1\Temp\VSD106B.tmp\dotnetfx\dotnetfx.exe' has changed since it was initially published. Click OK to retry the download, or Cancel to exit setup.

    the scenario for getting this error is first i have installed .net framework from microsoft's site, after that i have teried to install this downloaded application( that i want to install ) in my system, at  that time it gives me error message like above.

    I have also downloaded the dotnetfx.exe from microsoft and installed the .net, but then also i couldn't resovle the problem.


    So if u have any idea regarding this then please help me.

    Thanks in advance

    Darshak.


    Friday, September 07, 2007 7:40 AM
  • Huh?  What are you trying to say?
    Wednesday, November 18, 2009 10:03 PM
  • same error for me, but only in some machines (that have the same user rights of other pc where installation works well).

    hard to know how to fix this.

    • Proposed as answer by Chris Pauly Friday, November 09, 2012 3:53 PM
    • Unproposed as answer by Chris Pauly Friday, November 09, 2012 3:53 PM
    Wednesday, July 06, 2011 7:53 AM
  • We just had the same problem.  Our pre-requisites are using the ClickOnce option to downloaded from the component vendor's web site.

    It only was happening on one computer, so we didn't want to change our publish to fix it.

    We fixed this by cleaning up the temporary files on that machine.  You can run cleanmgr.exe to get an easy UI to cleanup temporary files and folders.
    • Proposed as answer by Chris Pauly Friday, November 09, 2012 3:54 PM
    Friday, November 09, 2012 3:54 PM