網頁

2012年2月29日 星期三

ASP.NET MVC3 安裝失敗問題解決方式

安裝 ASP.NET MVC3 時發生錯誤訊息如下:

OS Version = 6.0.6000, Platform 2
OS Description = Vista - x64 Ultimate Edition
CommandLine = i:\temp\ext47334\setup.exe
Using Simultaneous Download and Install mechanism
Operation: Installing
Package Name = Microsoft ASP.NET MVC 3
Package Version = 3.0.20105.0
User Experience Data Collection Policy: AlwaysUploaded
Number of applicable items: 6
Exe (i:\temp\ext47334\VS10-KB2483190-x86.exe) failed with 0x80070643 - 安裝時發生嚴重錯誤。 .
Final Result: Installation failed with error code: (0x80070643), "安裝時發生嚴重錯誤。 " (Elapsed time: 0 00:00:29).


這個問題在於 VS10-KB2483190-x86.exe 這一個檔案有可能已經安裝過了, 尤其當已經是 VS 2010 SP1 安裝.


要修正這個安裝 MVC3 的錯誤, 請用 7zip 或是 zip 的解壓縮程式將已經下載的AspNetMVC3Setup.exe 解壓到一個目錄中, 然後找出目錄底下的 parameterinfo.xml , 修改這一個檔案中的:

        <Exe CanonicalTargetName="VS10-KB2483190-x86"
             DownloadSize="18858336"
             HashValue="2CA4541D0AC789977E2B21A7238E400D4ADB2DE089839E9BAE0FED9F8537DA89"
             EstimatedInstallTime="849920"
             InstalledProductSize="12645888"
             Name="VS10-KB2483190-x86.exe"
             UninstallCommandLine="/q /norestart"
             RepairCommandLine="/q /norestart"
             Rollback="true"
             SystemDriveSize="100"
             InstallCommandLine="/q /norestart">
            <IsPresent>
                <NeverTrue />
            </IsPresent>
            <ApplicableIf>
                <Or>
                    <Or>
                        <Or>
                            <LessThanOrEqualTo LeftHandSide="30319.01" BoolWhenNonExistent="false">
                                <RegKeyValue Location="HKLM\Software\Microsoft\DevDiv\VS\Servicing\10.0\vstscore\Version"/>
                            </LessThanOrEqualTo>
                            <LessThanOrEqualTo LeftHandSide="30319.01" BoolWhenNonExistent="false">
                                <RegKeyValue Location="HKLM\Software\Microsoft\DevDiv\VS\Servicing\10.0\vstdcore\Version"/>
                            </LessThanOrEqualTo>
                        </Or>
                        <LessThanOrEqualTo LeftHandSide="30319.01" BoolWhenNonExistent="false">
                            <RegKeyValue Location="HKLM\Software\Microsoft\DevDiv\VS\Servicing\10.0\procore\Version"/>
                        </LessThanOrEqualTo>
                    </Or>
                    <LessThanOrEqualTo LeftHandSide="30319.01" BoolWhenNonExistent="false">
                        <RegKeyValue Location="HKLM\Software\Microsoft\DevDiv\vns\Servicing\10.0\xcor\Version"/>
                    </LessThanOrEqualTo>
                </Or>
            </ApplicableIf>
            <ActionTable>
                <InstallAction IfPresent="noop" IfAbsent="install" />
                <UninstallAction IfPresent="uninstall" IfAbsent="noop" />
                <RepairAction IfPresent="repair" IfAbsent="install" />
            </ActionTable>
        </Exe>

       
        將這一個 <Exe>...</Exe> 拿掉後存檔, 這樣就可以執行這個目錄底下的 setup.exe 完成安裝.      

沒有留言:

張貼留言