Windows XP에서 로컬 응용 프로그램 디렉터리에 msvcp90.dll
, msvcr90.dll
및 Microsoft.VC90.CRT.manifest
과 함께 실행되는 .exe가 있습니다. 또한 Visual C++ 2008 SP1 Redistributable Package에 의해 설치된 C:\WINDOWS\WinSxS\Policies
에이 .dll에 대한 정책 파일이 있습니다. 이 정책 파일을 삭제하고 로컬 디렉토리의 app config 파일을 대신 사용하고 싶습니다. 정책 파일은 다음과 같습니다로컬 구성 파일로 Microsoft.VC90.CRT WinSxS 정책 파일 바꾸기
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity type="win32-policy" name="policy.9.0.Microsoft.VC90.CRT" version="9.0.30729.1" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"/>
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.VC90.CRT" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"/>
<bindingRedirect oldVersion="9.0.20718.0-9.0.21022.8" newVersion="9.0.30729.1"/>
<bindingRedirect oldVersion="9.0.30201.0-9.0.30729.1" newVersion="9.0.30729.1"/>
</dependentAssembly>
</dependency>
</assembly>
내 설정 파일은 다음과 같습니다
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.VC90.CRT" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"/>
<bindingRedirect oldVersion="9.0.20718.0-9.0.21022.8" newVersion="9.0.30729.1"/>
<bindingRedirect oldVersion="9.0.30201.0-9.0.30729.1" newVersion="9.0.30729.1"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
정책 파일 대신 설정 파일을 사용할 때 종속성 워커 나란히 오류를보고 - 무슨 잘못? 또한 설정 파일의 이름을 <application>.exe.config
또는 Microsoft.VC90.CRT.config
으로 지정해야합니까?
(정책 파일을 사용하는 경우 명확히하기 위해, 오류가 표시되지 않습니다. 그러나, 여기에 클라이언트 재배포 가능 패키지를 설치 할 수 없습니다.
MSDN docs 상태를 앱 설정 파일이 다른 사용할 수있는 응용 프로그램을 리디렉션 할 수 있음 동일한 어셈블리 버전 (per-application configuration)을 사용하고 필요에 따라 기존 정책 (게시자 구성) 파일을 덮어 쓸 수 있음을 확인했습니다. 따라서 로컬 응용 프로그램 구성 파일을 사용할 수 있어야하며 위 파일의 내용이 누락되었거나 올바르지 않습니다.)
의도 한 파일을 사용하여 오류를 제거하십시오. –