2012年2月11日土曜日

CLRProfilerでエラーが発生してプロファイルできない問題への対応

CLRProfilerを使う際に以下のログがウィンドウにでたままプロファイルができない場合がある。

Waiting for application to start common language runtime

特権レベルでの実行

まず、原因の1つにアプリケーション実行ユーザーの権限が適切でないというケースが考えられる。

これを解消するには、プロファイルの対象の実行ファイル(.exe形式)を選択して、右クリックし メニューからプロパティを選択した上で、以下のチェックボックスにチェックをいれておけばよい。

互換性>特権レベル>管理者としてこのプログラムを実行する

対応しているCLRのバージョン

管理者として実行しても、プロファイルを開始できない場合は、CLRProfilerのターゲットバージョンが、 プロファイル対象のアプリケーションと合っていないことを疑ってみるとよい。

アプリケーション側のCLRのバージョンは、VisualStudioであれば、プロジェクトのプロパティから アプリケーション情報を開き、対象のフレームワークにより、.Net Frameworkの バージョンで確認できる。

一方、CLRProfiler側は、このツールを紹介している時期によって、ダウンロード先のリンクから取得できる CLRProfilerの対応しているバージョンがことなっている場合がある。

CLRのダウロード

とりあえず見つけ出したバージョンへのリンクを以下にメモしておく。

2012年2月4日土曜日

VisualStudio2010でファイル名で検索してファイルを開く方法

"ファイル内"ではなく、"ファイル名"でソリューション内を検索して、そのファイルを開きたいことがある。

MacのTextMateのCommand+Tや、Eclipseでいうところの Ctrl+Shift+Oのような機能を、VisualStudioで探していたみた。

VisualStudio2010の「移動」を使う

Ctrl+カンマで、移動ダイアログを開き、検索したい文字列を入力すると、 プロジェクトないの該当するファイル、関数、マクロを表示できる。

関数やマクロがヒットしてうれしい場合もあるが、ファイルだけをフィルタしてくれるシンプルなモードがあればもっと使いやすそう。
VisualStudio2010の標準機能というところはとてもよいので普通に使うならこれがよさそう。

Quick Open File for Visual Studio 2010

VisualStudioの機能拡張QuickOpenFileは、 ファイルを開くということに特化していることもあり使い勝手がよい。
使い心地はTextMateのCommand+Tに近くて気に入っている。

ただ、Ctrl+Kを押してからOを押すショートカットは変更できないようなので、その点だけが残念。

Productivity Power Tools の Quick Access

便利な機能拡張をセットにしたProductivity Power ToolsにQuick Accessという機能がある。

この機能はProductivity Power ToolsをインストールするとCtrl+3で呼び出せ、ファイル名を 入力すれば検索結果を表示、ファイルを開くことができる。またタスクの実行などもでき、使いこなせば便利かもしれない。

ただ、ファイル名の先頭から一致していないとヒットしない致命的な欠点がある。