VisualStudio2008メモ


項目テンプレートの作成


アセンブリの登録

ランタイムクラスやパイプラインのカスタムライブラリ化の際、アセンブリの登録が必要となります
通常は以下のフォルダが参照されますが、自分で指定フォルダを追加することもできます
C:\Program Files (x86)\Microsoft [[XNA]]\XNA Game Studio\v4.0\References\Windows\x86

ウインドウズ7でのCMD.exeやregedit.exeの起動

スタートメニューの一番下の項目「プログラムとファイルの検索」のメッセージボックス内で該当するプログラム名を入力すると即起動できる
ここでは通常のファイル名、メール内のキーワードなども検索できるので利用すると便利
cmd コマンドライン
regedit レジストリエディタ

IME辞書の設定にカタカナ語英語変換辞書を加える

IME辞書の設定にカタカナ語英語変換辞書を加えることにより「りくえすと」と入力すると変換候補に「request」などの英単語の候補が表示されるようになります
関数の名前などの入力にとても便利なので設定しておく事をオススメします
IMEの言語ヘルプバーからプロパティ->辞書/学習->システム辞書の各項目を確認。「Microsoft IME カタカナ語英語辞書」をオンにする。これでひらがな単語入力後に変換をすると英単語の候補が表示されます
スペル確認など際も単語を選択しておき変換を掛けると正誤がチェックできます
参考:Microsoft IME で英単語をカタカナに変換する: 世の中は不思議なことだらけ

スニペット機能の追加や編集

カスタムコードスニペットのサンプル集
C#のスニペットが収められているフォルダは C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC#\Snippets\1041\Visual C#
以下スニペットのXMLコード例
<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<CodeSnippet Format="1.0.0">
	<Header>
		<Title>dw</Title>
		<Shortcut>dw</Shortcut>
		<Description>Debug.WriteLine に対するコード スニペット</Description>
		<Author>Microsoft Corporation</Author>
		<SnippetTypes>
			<SnippetType>Expansion</SnippetType>
		</SnippetTypes>
	</Header>
	<Snippet>
		<Declarations>
			<Literal Editable="false">
				<ID>SystemDiagnostics</ID>
				<Function>SimpleTypeName(global::System.Diagnostics.Debug)</Function>
			</Literal>
		</Declarations>
		<Code Language="csharp"><![CDATA[$SystemDiagnostics$.WriteLine($end$);]]>
		</Code>
	</Snippet>
</CodeSnippet>
</CodeSnippets>
解説すると、<ID>が<Function>と繋がっている
<Code Language="csharp"></Code>の間にあるコードが実際に入力される。上記の$SystemDiagnostics$はIDのFunctionを呼び出してると考えると良いらしい
参考資料:IntelliSense コード スニペットの作成と使用

ソリューションの管理

ソリューションエクスプローラーから以下のようなことができる
  • ソリューション内のプロジェクト管理
    • 新規プロジェクトの追加や削除
    • スタートアッププロジェクト、マルチスタートアップの設定
    • プロジェクトの依存関係の変更等
  • プロジェクトのプロパティの変更
    • アセンブリ、名前空間の設定
    • 対象フレームワークの変更(.NETの各バージョン、Clientpro_fileは参照若干範囲が狭くなるようだ?)
    • 出力の種類の変更(ウインドウズアプリ、コンソール、DLL)
    • ビルドやセキュリティ、署名などの管理
  • 参照設定の管理
    • 参照はプロジェクトやフレームワークなどでusingで届く範囲の設定などを行える
各要素、ソリューション、プロジェクト、参照設定のアイコンを右クリックしてプロパティを実行することによりアクセスできる
ソリューション内のスタートアップ、実行形式、パイプラインかどうか?、各プロジェクトの参照設定や名前空間の関係などはしっかり把握しておく事

  • 便利なショートカット
Ctrl+E、c //注釈化
Ctrl+E、u //注釈化解除

  • 派生したクラスからオーバーライドしたい関数を探したい場合
クラスの宣言コード内で「public overrride」と入力しキーワードの最後でスペースを押すなどしてインテリセンスを起動すると
その派生クラスのオーバーライド可能な関数のリストが表示される

  • ウインドウズのショートカット
Windows XP のショートカット キー | マイクロソフト アクセシビリティ
ショートカットの一部は共有されている。特にVisualStudio上作業している際、便利なものを以下に記す
CTRL + ← →  単語の最初に移動
CTRL + F4 作業中の文章を閉じる
CTRL + TAB 作業中の文章を切り替え
ALT+F4 フォーカスしたアプリケーションを閉じる
ALT + TAB アプリケーションの切り替え
ALT + ENTER プロパティの表示
CTRL+SHIFT+ESC or CTRL+ALT+DEL タスクマネージャの起動
Windows ロゴ キー + D ディスクトップの表示 tipsディスクトップ表示中にALT+F4するとマシンを終了できる
Windows ロゴ キー + F ファイルの検索
Windows ロゴ キー + E エクスプローラの起動
Windows ロゴ キー + M 全てのウインドウの最小化
BackSpace エクスプローラーで1階層上のフォルダへ

  • 参照設定の追加(トラブル対処)
Microsoft.Xna.Framework.Content.Pipeline アセンブリ等を「参照の追加」する際、.NETコンポーネント表示内のリストに
該当箇所が表示されない場合がある。これはそのプロジェクトの対象フレームワークが違う事が原因である。メインメニューの「プロジェクト=>「~のプロパティ」」
を開きアプリケーションタブ内の対象のフレームワークを「.NET Framework4」に変更すると参照項目も変更され表示される。
(「.NET Framework4」と「.NET Framework4 Client Profile」では参照範囲が異なる)

  • インテリセンス
コードの途中でもALT+右キーで候補表示できる
詳細:IntelliSense の使用方法

  • 競合の解決(クラスに必要なusingの追加)
クラスの名前の上で 右クリック>競合の解決>宣言文 でusingで必要な宣言を自動的に追加してくれます。

  • アイコン
(下記の「メイン関数」の部分は正確には「メイン関数を含んだクラス」)

  • スニペット
インテリセンス機能によって候補表示、編集追加されるコードの事で最大限利用するためにはTABキーなどを利用すると良い
例としてC#で「prop」と入力して、すぐにTABキーを2回押すとスニペットとしてコードが挿入される。
詳細などはここを読むと良い。
ctor、prop、cw、foreach等のスニペットはとても便利

  • Tips
テキストエディタの上部に表示されたファイル名タブを右クリックしてメニュー表示すると「このアイテムのフォルダーを開く」等の機能が使用できる
簡単にファイルを探したい場合に便利

  • ソリューション
ソリューション内には複数のプロジェクトを含めることが出来る。
XNAで利用する場合、よくある例として「コンテンツパイプラインのプロジェクト」と「ゲーム本体のプロジェクト」の二つのプロジェクトを
一つのソリューション内に同居させることがよくある。その際はゲーム本体側のプロジェクトに「スタートアッププロジェクトに設定」をしておく。
ソリューションエクスプローラー内で該当プロジェクトを選択した状態でメニュバー>プロジェクト>スタートアッププロジェクトに設定 を実行。

またXNAで独自のコンテンツパイプラインを利用する際は「content」の「参照設定」に該当するコンテンツパイプラインのプロジェクトを追加する必要がある。
ソリューションエクスプローラー内で「content」の下にある「参照設定」を右クリック、参照の追加>プロジェクト/タブ>該当するプロジェクト名を登録する。
登録後にソースアセット(txtやXML、画像ファイルなど)を読み込むと自動で拡張子によりインポータが選択されプロパティにセットされる。
(コンテンツパイプラインが製作中でその前にソースアセットが登録された場合プロパティの表示がおかしくなるので注意、動作上は問題ないが気持ち悪い)

  • F1キーでヘルプ表示

  • 関数やメンバーなどにカーソルを合わせる事で型などが表示される

  • 変数や関数などを右クリックしてメニューから「定義へ移動」、「すべての参照を検索」が便利

  • ~をラップする
ブロックを選択した状態で右クリックし「ブロックの挿入」を実行することで選択したステートメントでラップされる({}で囲まれる)

  • 関数の上の行で「///」を入力すると<sammary>が自動生成される
この場合XMLコメントとして扱われvisualStudioのインテリセンスでコメントが表示されるようになる。

  • 実装側の関数の上で右クリックして「メソッドスタブの作成」で定義側の関数の雛形を作成できる
最終更新:2012年10月08日 20:53
添付ファイル