2012-10-07 70 views
25

Visual Studio 11/2012 ProfessionalをインストールしたパーティションにWindows 8をクリーンインストールしましたが、C:\Windows\Microsoft.NET\Framework\v4.0.30319の中にregtlibv12.exeが見つかりません。以下は regtlibv12はどうなりましたか?

Windows 7 - .Net 4

は純4.5を使用してWindows 8(なしregtlibv12)である:以下

は、.NET 4.0(およびregtlibv12)で、私のWindows 7のパーティションのスクリーンショットです

Windows 8 - .Net 4.5

regtlibv12はもはや.Netフレームワークの一部ではありませんか? .Net 4.0もインストールする必要がありますか? .Net 4.0を4.5の上にインストールするとどうなりますか?私は彼らが両方ともハードドライブ上の同じ場所に行くことを知っていて、4.5は効果的に4.0を上書きし、4.5はWindows 8のデフォルトとして提供されます。

ありがとうございました

答えて

33

これは決してフレームワークの一部ではありませんでした。それは完全に文書化されていない。しかし、v2.0.50727またはv4.0.30319のディレクトリで多くのプログラマがそれを見つけて登録問題を解決できるとの非常に一貫した噂があります。多くのフォーラムの記事にそれが言及されています。

これらのフォルダに表示される正確な方法はリバースエンジニアリングが難しいので、私が見た唯一のパターンは、フレームワークを自分でインストールするときに表示されることです。フレームワークがマシンにあらかじめインストールされていると、そこにはいません。いくらか意味がありますが、登録が必要なフレームワークディレクトリ内にいくつかの.tlbファイルがあります。それらには、クライアントコードが依存関係を持つ可能性がある.NET [ComVisible]タイプのタイプ情報が含まれています。通常のウェイタイプライブラリは、通常のCOMサーバーに埋め込まれていないため、これらの.tlbファイルには適用されません。登録情報が通常のWindowsセットアップにロールアップされるため、ツールは.NETのプリインストールバージョンには必要ないと推測されます。

ツールに依存してしまった場合は、別のマシンから.exeをコピーすること以外に多くのことができません。

  • はそれがRegasm.exeによって付き/ TLBオプションを使用し忘れるための回避策です:あなたはもうそれを必要としないので、それとも、もう一方の端からそれを使用する必要がある理由に取り組みます。クライアントコードが別のスレッドのCOMインターフェイスを使用しようとすると、実行時にTYPE_E_CANTLOADLIBRARYエラーが発生することがあります。型ライブラリは、標準マーシャーがメソッドの引数を整列化するために必要な型情報を提供します。これを修正するには、/ tlbオプションを使用します。

  • これは、COM +サーバーをプロジェクト+参照の追加、COMタブに表示させるための回避策です。そのタブには登録されたタイプライブラリがリストされます。しかし、適切な回避策ではありません。ビルドサーバー以外では、コードをコンパイルできますが、登録が完了していないため実行できません。これを行う適切な方法は、提供されたインストーラを使用するか、ピンチでRegsvr32.exeを使用して、タイプライブラリとCLSIDキーの両方が登録されるようにすることです。

  • これは、タイプライブラリを登録していないCOMサーバーの回避策です。上記と似ていますが、タイプライブラリの登録はオプションで、通常はあなたの開発マシンでのみ必要で、サーバを実行するマシンでは必要ありません。タイプライブラリを使用できるツールの多くは、TypeLibレジストリキーに依存するのではなく、明示的に追加する方法があります。Visual Studio IDEでも同様に、.tlbファイルを直接選択する代わりに[参照]タブを使用できます。

+0

非常に興味深いですが、自分のマシン上にどのようになったのか分かりましたら、私はコメントを残していますが、Windows 7パーティションに自分自身でフレームワークをインストールしませんでした。 Visual StudioをWindows 8にインストールするたびに実行します。 – JMK

+1

いいえ、大きな違いがあります。 .NET 4.5はWindows 8にプリインストールされています。 –

+0

申し訳ありませんが、3.5はWindows 7にプリインストールされていますが、Visual Studio 2010をインストールすると4がインストールされます。 – JMK

関連する問題