3流プログラマのメモ書き

元開発職→社内SE→派遣で営業支援の三流プログラマのIT技術メモ書き。 このメモが忘れっぽい自分とググってきた技術者の役に立ってくれれば幸いです。(jehupc.exblog.jpから移転中)

(.Net)オリジナクラスのドキュメント(リファレンス)作成方法。(Sandcastle編)

.Netでオリジナルクラスを生成した時、そのドキュメント(リファレンス)をソースのドキュメントコメントから生成する方法です。

環境はVisual Studio2005。

いくつか方法があるみたいですが、一番メジャーだと思われるSandcastleを使ってみました。

Sandcastleコマンドラインベースのツールで使いにくかったので(というより自分の環境ではなぜか失敗してしまいました)、Sandcastle Help File BuilderというGUIツールからSandcastleを使ってみます。

まずここからSandcastleの最新版をダウンロードします。

(2008/04/24時点で最新は2008/1/16 Update版です。)

なお、マイクロソフトのWebからもダウンロード可能ですが、こちらのは2007年のCTP版なので、最新のSandcastle Help File Builderからは使えませんでしたので注意です。

Sandcastle Help File Builderはここからダウンロードします。

1.6.0.4 Producion と 1.6.0.6 BETA がありました、今回はベータ版を使いました。

なお、Visual Studioのプロジェクトの設定で「XMLドキュメントファイル」の出力にチェックを入れる必要があります。

これでプロジェクトをビルドし、Sandcastle Help File Builderを起動して、VSのソリューションかプロジェクトファイルを開きます。

自動でビルド時に出てきたxmlファイルが上部のリストに出てきてますが、一応 Edit ボタンからただしくリンクしてるか確認します(ビルド先を変えていると結構間違っていることがあるようです)

デフォルトではPublicメンバしか作ってくれないっぽいので、Visibility配下のプロパティで、どのレベルまでのリファレンスを作るかを指定できます。英語さっぱしのため詳しくはわからないのでいろいろ試してみるしかなさそうです。

参照している別DLLなどがあれば、それもDependenciesプロパティで指定してあげないとビルド中にエラーが出るみたいです。

また、自分の環境ではHelpFileFormatがHelp1xだとうまくいかなかったので、Websiteでビルドしなおしました。

(まあどのみちWebサーバでみれるようにしたかったのでこれでかまわなかったのですが。)

とここまでいろいろ書いてきましたが、詳しいことは。非常にわかりやすかったので助かりました。

また、こちらでも詳しく説明されているので参考になります。

ただ、「4.「スタートメニュー」-「すべてのプログラム」-「Sandcastle Help File Builder」-「Build Reflection Data (first use)」を実行。」の部分は実行しなくても動きました。

(Sandcastleの最新版をいれておくと「すでにフォルダがある」みたいなエラーメッセージが出てきます。)

自動でリファレンスがでてくるというのは非常にありがたいですね。

ただ、作ったリファレンスがプロジェクトメンバに見てもらえず、みな口頭でききにくるというのはちょっと悲しいですが。。