アセンブリの既定のバージョンはどこに保存されていますか?Windows side-by-sideアセンブリの既定のバージョン(msvcr90.dll)
python.exe(2.6または2.7)を実行してProcess Explorerを使用してチェックアウトすると、最新バージョンのmsvcr90.dll(9.0.30729.9247)が読み込まれます。 Pythonにはmsvcr90.dllのバージョン9.0.21022.8を指定する内部マニフェストがありますが、新しいバージョンがまだ読み込まれています。 Python 2.6にはMicrosoft.VC90.CRT.manifestファイルがあり、9.0.21022.8も指定されていますが、新しいバージョンは常に読み込まれます。
プロセスモニタを使用すると、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が
などの古いバージョンのデフォルトのバージョン:で指定されました。 '%SystemRoot%\ WinSxS \ Manifests'の" \ * policy.9.0.microsoft.vc90.crt \ * 9.0.30729.9247 \ *。manifest "を探します。 – eryksun
新しいバージョンのDLLがロードされているため、間違った動作が発生しましたか? –
私は以下の私の受け入れられた答えに記載されているようにレジストリ値を変更することによって動作させることしかできませんでした。私はまだ悪い行動を経験していません(少なくとも目立つものはありません)が、ある段階(新しいバージョンが必要なプログラム)で何かが壊れることは確かです。 – kbotha