2016-10-18 2 views
0

어셈블리의 기본 버전은 어디에 저장됩니까?Windows side-by-side 어셈블리 기본 버전 (msvcr90.dll)

python.exe (2.6 또는 2.7)를 실행하고 Process Explorer를 사용하여 체크 아웃하면 최신 버전의 msvcr90.dll (내 PC에 9.0.30729.9247)이로드됩니다. 파이썬에는 msvcr90.dll의 버전 9.0.21022.8을 지정하는 내부 매니페스트가 있지만 최신 버전이 아직로드되어 있습니다. Python 2.6에는 9.0.21022.8을 지정하는 Microsoft.VC90.CRT.manifest 파일이 있지만 최신 버전이 항상로드됩니다.

프로세스 모니터를 사용하면 msvcr90.dll이로드되고 모두 9.0.30729.9247을 사용할 때 다른 모든 인스턴스를 볼 수 있습니다.

어딘가에서 내 PC가이 모든 프로그램에 최신 버전을 사용하도록 알려야하지만 어딘지 알 수없는 것 같습니다. WinSxS 폴더에 여러 버전의 microsoft.vc90.crt가 있습니다.

기본 버전을 변경할 수없는 경우 microsoft.vc90.crt를 '다운 그레이드'할 수있는 방법이 있습니까? 보다 표준적인 버전 (9.0.30729.6161)

PS로. 나는 microsoft.vc90.crt의 내 버전 9.0.30729.9247이

+0

등 이전 버전에

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide\Winners\x86_policy.9.0.microsoft.vc90.crt_ 

변경 기본 버전 :로 지정했습니다. "% SystemRoot % \ WinSxS \ Manifests"에서 "\ * policy.9.0.microsoft.vc90.crt \ * 9.0.30729.9247 \ *. manifest"를 찾으십시오. – eryksun

+0

최신 버전의 DLL이로드되어 특정 동작이 잘못 되었습니까? –

+0

나는 아래의 나의 허용 된 대답에 명시된 바와 같이 레지스트리 값을 변경하여 작동시킬 수 있습니다. 아직 (적어도 눈에 띄는 것은 없지만) 나쁜 행동을 한 번도 경험하지는 못했지만 무언가가 무언가를 깨뜨릴 것이라고 확신합니다 (새 버전이 필요한 프로그램). – kbotha

답변

0

어셈블리 버전이 microsoft.vc90.crt에 대한 레지스트리

에 지정된 나란히 윈도우 버전이 기본에서 온 아무 생각이 없다 때문에 "Microsoft.VC90.CRT"조립 게시자 구성 파일에`bindingRedirect` 다시 요구

관련 문제