.NET Frameworkの中身を見てみた
前エントリで.NET Frameworkライブラリソースの参照のしかたがわかりました。
せっかくですので、実際に参照してみましょう。
まずは設定。
元ネタはMicrosoftサイトのReference Source Code Centerから。
VS2008(Express Editionではできません)を起動して。
メニューから[ツール]-[オプション]で[オプション]ダイアログを起動して。
[すべての設定を表示]チェックボックスがあればチェックをつけて。
[デバッグ]-[全般]の、
['マイコードのみ'設定を有効にする]のチェックを外して、
[ソースサーバーサポートを有効にする]にチェックをつけて。
[デバッグ]-[シンボル]の
ボタンをクリックして、
[シンボルファイル(.pdb)の場所]に「https://Referencesource.microsoft.com/symbols」と入力して、
[シンボルサーバーからシンボルをキャッシュするディレクトリ]に「C:\Symbols\RSCC」(まあこれはどこでもいいんですけど)と入力して、
[シンボルが手動で読み込まれるときのみ上記の場所を探す]にチェックをつけて。
「ソースサーバーを有効にしますか?」ダイアログが表示されたら[はい]。
以上な感じです。
設定が終わったら、実際に参照してみましょう。
ここからの元ネタは、Shawn BurkeさんのblogShawn Burke's Blog : Configuring Visual Studio to Debug .NET Framework Source Codeから。
とりあえずなんか適当にプロジェクトを作成して。
ソースも適当に書いて、ブレークポイントを設定して、
実行。→ ブレークポイントで止めて。
Ctrl+Alt+C(VBの場合はCtrl+Lでもおっけー)を押して[呼び出し履歴]ウィンドウを表示させて。
参照したいプロシージャ(メソッド)行で右クリック→コンテキストメニューから[シンボルの読み込み]を選択。
[Microsoft Internet Symbol Store]ダイアログが表示されるので[Yes]と返事して。
[呼び出し履歴]ウィンドウの選択行、右端の[言語]列に言語が表示されれば読み込み完了。
選択行をダブルクリックして、
[End User License Agreement](EULA)ダイアログが表示されるので[Accept]と返事して。
おお、表示されましたされました。
予想はしていたけど、ソースはやっぱC#なんだなー。(;-;)
えー、もひとつ参照のしかたが紹介されてますね。
同じくブレークポイントで実行を中断した状態で。
Ctrl+ALT+Uで[モジュール]ウィンドウを表示させて。
参照したいDLLで右クリック→コンテキストメニューから[シンボルの読み込み]を選択。
選択行の[シンボルの状態]が「シンボルが読み込まれました。」と表示されれば読み込み完了。
さて、ついでなのでもう一丁。
前エントリで言及しましたVisual Studio 2008 QFEをインストールしてみました。
むかり。やっぱり。
悔しいので、手動でインストールしてみることにします。
ダウンロードした336928_ENU_i386_zip.exeをアーカイバで開くと、以下のような内容になっています。
この中のVS90-KB944899.exeをさらにアーカイバで開いて、
この中のVS90-KB944899.mspをさらにアーカイバで開いて、
この中のpatch.cabをさらにアーカイバで開いて、
よしっ、出てきました FL_vsdebug_dll_10598_x86_ln.3643236F_FC70_11D3_A536_0090278A1BB8 。
こいつのプロパティを参照すると、VSDebug.dll Ver.9.0.21022.39であることがわかります。
VS2008インストールでコピーされたvsdebug.dllは C:\Program Files\Microsoft Visual Studio 9.0\Common7\Packages\Debugger(デフォルトインストール時)に格納されているVer.9.0.21022.8ですので、先のファイルをリネームして上書いてやればいいわけですね。
では先ほどと同じ操作をして、速度を比較してみましょう。
…速くなった…のかなぁ?
まあ、「気は心」レベルで入れといた方が精神衛生的にいいかもしれません、程度でしょうか。
もうちょい詳しいFIX内容が提示されないと、ありがたみがわからないのかもしれません。
コメント
あ、msp なのか...
ちょっとチェックしてみるかなぁ...w
って ExpLzh って、mspまで展開するのか!
気合入ってるなぁ...w
投稿者: とっちゃん | 2008年01月30日 13:13
> ちょっとチェックしてみるかなぁ...w
よろしくお願いしますプロの人。m(_ _)m
> 気合入ってるなぁ...w
そなんです。
msiやcabをイジりたくてLHUT32から乗り換えちゃったんですよ。
投稿者: さるべーじ | 2008年01月30日 14:34