2013-03-04 3 views
1

IIS 응용 프로그램을 설치하고 구성하는 여러 Installshield 프로젝트가 있습니다. 우리는 다른 응용 프로그램의 여러 버전 (3 응용 프로그램의 7 버전 이상)을 제공했으며 2.0 & 3.5 대신 .net 4.0을 사용하도록 업그레이드하려고합니다.installshield 프로젝트에서 .net 2.0에서 기존 웹 응용 프로그램을 4.0으로 마이그레이션 할 수있는 방법

"인터넷 정보 서비스"설정을 수정하여 응용 프로그램 풀에서 웹 사이트/응용 프로그램의 ASP.NET 버전을 4.0.30319로 변경하고 .NET Framework 버전을 v4.0으로 변경하면 설치 관리자가 응용 프로그램을 IIS 6 이하 버전의 4.0 버전과 함께 사용하고 IIS 7 이상 버전에서는 v4.0을 사용하도록 풀을 올바르게 설정하지만 업그레이드는 모든 대상에서 작동하지 않습니다.

업그레이드는 정상적으로 설치되지만 가상 디렉터리 나 응용 프로그램 풀의 .Net 버전은 변경되지 않습니다. 수동으로 변경하는 것은 물론 가능하지만 지원 문제가 증가하게됩니다.

업 그레 이드를 주요 업그레이드로 변경하려고했지만 성공하지 못했습니다. 현재 설치 후 .Net 버전을 변경하는 사용자 지정 작업을하고 있지만 Installshield의이 기능에 대한 많은 경험이 없습니다 .

누구든지이 문제가 발생 했습니까? 이것을 달성하기위한 선호되는 방법이 있습니까? 시간을 소비하지 않고

감사

+0

설치 관리자 로그를 보았습니까? 해당 구성 요소가 재설치됩니까? –

+0

아니요, 그렇지 않습니다. 얻을 : 속성 '이름'값을 가진 발견 된 요소 : MyApplicationPool InstallShield 20시 44 분 57 초 : AppPool 이미 있습니다. InstallShield 20:44:57 : 응용 프로그램 풀이 이미 존재합니다. – reckface

+0

그게 내가 붙어있어. 설치 프로그램이 기존 풀의 값을 변경하게하려면 어떻게해야합니까? – reckface

답변

1

한 빠른 해결책은 새로운 설치 프로그램에 응용 프로그램 풀의 이름을 변경하는 것 ... 그것으로 파고 (사용자 지정 작업, 또는 닷넷 설치 클래스는 WIX를 선택할 수 없습니다) 그리고 주요 업그레이 드가 새로운 것을 만들고 오래된 것을 제거하게하십시오. 결국, .NET 2.0에서 4.0으로 변경하는 경우, 이전 버전과 호환되지 않는 구성 요소를 만드는 것이므로 새로운 구성 요소 여야합니다.

+0

고마워, 그건 분명히 중요한 진전이야. IIS 7 (Asp.Net 버전은 응용 프로그램 풀에 있기 때문에)에서 작동하지만 IIS 6에서는 작동하지 않습니다 (ASP.net 버전은 응용 프로그램에서 설정 됨). 설치하는 동안 기존 속성을 수정할 수있는 방법이 있습니까? 응용 프로그램은 이전 appPool을 보유합니다. 로그에 : InstallShield 22:03:49 : 응용 프로그램이 이미 있습니다. InstallShield 22:03:49 : INSTALLSHIELD_SSI_PROP 값이 'SetSSIEnableCmdDirective'입니다. InstallShield 22:03:49 : 아무 작업도하지 않고 사용자 기본 설정은 SetSSIEnableCmdDirective를 무시하는 것입니다. – reckface

관련 문제