web-dev-qa-db-ja.com

GAC 32ビットと64ビット

私はこれをよりよく理解しようとしてしばらく探してきましたが、これに関する簡単な答えを見つけていません。

GACに追加する必要があるコンポーネントがあります。私はWindows 7 64ビットを実行していますが、問題を解決するために(SSIS 2005はDLLを認識していません)、DLL( .NET 4.0)適切なGACに登録されています。

だからここに私の質問があります:

  1. 64ビットと32ビットの両方のGACのWindows 7の物理的な場所はどこですか?私はC:\ Windows\Assemblyを知っていますが、これがどれで、もう一方がどこにあるのかはわかりません。

  2. 64ビットGACにアセンブリを追加するには、どのバージョンのgacutilを使用しますか? 32ビットGAC?私はC:\ Program Files(x86)\ Microsoft Visual Studio 10.0\VCを知っており、これが32ビット用であると仮定していますが、64ビットgacutilがどこにあるかはわかりません。

  3. アプリケーションがアセンブリを探すGACを決定するものは何ですか?私はこれがアプリが64ビットか32ビットかによって決定されると仮定していますが、それ以上のものがあるかどうか疑問に思っています。

前もって感謝します。

更新:

ShaneBlakeの答えに続いてこれを掘り下げた後、.NET 2.0と.NET 4.0 GACは異なる場所にあることを思い出しました。そう:

.NET 2.0 GAC:
c:\windows\Assembly(32ビットと64ビット?)

.NET 4.0 GAC
c:\windows\Microsoft.NET\Assembly\GAC_32(32ビットのみ)
c:\windows\Microsoft.NET\Assembly\GAC_64(64ビットのみ)
c:\windows\Microsoft.NET\Assembly\GAC_MSIL(32ビットと64ビット?)

36
Jerad Rose

Gacutil.exeは、コンパイル方法に応じて.dllを正しい場所にインストールする必要があります。ここでファイルを見つけることができるはずです:%ProgramFiles%\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools\

.NET 4には、独自のAssemblyフォルダー(c:\windows\Microsoft.NET\Assembly\GAC_32および\GAC_64内のディレクトリ...これは、インストールされたファイルを見つける場所です。

お役に立てば幸いです...

22
ShaneBlake

Windows 1の場合:

C:\ Program Files(x86)\ Microsoft SDKs\Windows\v7.0A\Bin

0
JerryGoyal