古い ADO 関係のオプションに関する資料を発掘したので Up しておきます。
Execute メソッド(ADO Command)関連定数
Options:CommandText プロパティを評価する方法を指定
CommandTypeEnum と ExecuteOptionEnum の組み合わせで指定できる。
赤字部分はドキュメントに記載されていない補足部分。
| 定数名 |
数値 |
16進 |
説明 |
| CommandTypeEnum |
adCmdText |
1 |
&H1 |
プロバイダが CommandText をコマンドのテキスト定義として評価する必要があることを示します。 |
| adCmdTable |
2 |
&H2 |
CommandText で名前を付けられたテーブルの全レコードを返すために ADO が SQL クエリを生成する、必要があることを示します。 |
| adCmdStoredProc |
4 |
&H4 |
プロバイダが CommandText をストアド プロシージャとして評価する必要があることを示します。 |
| adCmdUnknown |
8 |
&h8 |
CommandText のコマンドの種類が不明であることを示します。 |
| adCmdFile |
256 |
&H100 |
持続的 (保存された) Recordset オブジェクトをが CommandTextで名前を付けれたファイルから復元する必要があることを示します。 |
| adCmdTableDirect |
512 |
&H200 |
プロバイダが CommandText で名前を付けられたテーブルの全レコードを返す必要があることを示します。 |
| ExecuteOptionEnum |
adAsyncExecute |
16 |
&H10 |
コマンドを非同期実行することを指定します。 |
| adAsyncFetch |
32 |
&H20 |
CacheSize プロパティで指定された初期数量が取り出された後、残りのレコードを非同期的に取り出す必要があることを示します。 |
| adExecuteNonBlocking |
64 |
&H40 |
undocumented |
| adExecuteNoRecords |
128 |
&H80 |
undocumented |
| adExecuteStream |
1024 |
&H400 |
undocumented |
Open メソッド(ADO Recordset)関連定数
CursorType:Recordset を開く際にプロバイダが使うカーソルタイプを指定
CursorTypeEnum で指定できる。
赤字部分はドキュメントに記載されていない補足部分。
| 定数名 |
数値 |
16進 |
説明 |
| adOpenForwardOnly |
0 |
&H0 |
デフォルトの値です。前方スクロールタイプカーソルを開きます。 |
| adOpenKeyset |
1 |
&H1 |
キーセットカーソルを開きます。 |
| adOpenDynamic |
2 |
&H2 |
動的カーソルを開きます。 |
| adOpenStatic |
3 |
&H3 |
静的カーソルを開きます。 |
LockType:Recordset を開く際にプロバイダが使うロックタイプを指定
LockTypeEnum で指定できる。
赤字部分はドキュメントに記載されていない補足部分。
| 定数名 |
数値 |
16進 |
説明 |
| adLockReadOnly |
1 |
&H1 |
デフォルトの値です。読み取り専用。 |
| adLockPessimistic |
2 |
&H2 |
レコードごとの排他的ロック。 |
| adLockOptimistic |
3 |
&H3 |
レコードごとの共有的ロック。 |
| adLockBatchOptimistic |
4 |
&H4 |
共有的バッチ更新。 |
AbsolutePosition プロパティ(ADO)関連定数
Recordset 内のカレントレコードの位置を指定します。
PositionEnum で指定できる。
赤字部分はドキュメントに記載されていない補足部分。
| 定数名 |
数値 |
説明 |
| adPosUnknown |
-1 |
Recordset が空,現在の位置が不明,またはプロバイダが AbsolutePosition をサポートしていない。 |
| adPosBOF |
-2 |
カレントレコードが BOF。 |
| adPosEOF |
-3 |
カレントレコードが EOF。 |
Type プロパティ(ADO)関連定数
Parameter,Field または Property のデータ型を示します。
DataTypeEnum で指定できる。
赤字部分はドキュメントに記載されていない補足部分。
| 定数名 |
数値 |
16進 |
説明 |
| adArray |
8192 |
&H2000 |
undocumented |
| adBigInt |
20 |
&H14 |
DBTYPE_I8 |
| adBinary |
128 |
&H80 |
DBTYPE_BYTES |
| adBoolean |
11 |
&HB |
DBTYPE_BOOL |
| adBSTR |
8 |
&H8 |
DBTYPE_BSTR |
| adChapter |
136 |
&H88 |
undocumented |
| adChar |
129 |
&H81 |
DBTYPE_STR |
| adCurrency |
6 |
&H6 |
DBTYPE_CY |
| adDate |
7 |
&H7 |
DBTYPE_DATE |
| adDBDate |
133 |
&H85 |
DBTYPE_DBDATE |
| adDBTime |
134 |
&H86 |
DBTYPE_DBTIME |
| adDBTimeStamp |
135 |
&H87 |
DBTYPE_DBTIMESTAMP |
| adDecimal |
14 |
&HE |
DBTYPE_DECIMAL |
| adDouble |
5 |
&H5 |
DBTYPE_R8 |
| adEmpty |
0 |
&H0 |
DBTYPE_EMPTY |
| adError |
10 |
&HA |
DBTYPE_ERROR |
| adFileTime |
64 |
&H40 |
undocumented |
| adGUID |
72 |
&H48 |
DBTYPE_GUID |
| adIDispatch |
9 |
&H9 |
DBTYPE_IDISPATCH |
| adInteger |
3 |
&H3 |
DBTYPE_I4 |
| adIUnknown |
13 |
&HD |
DBTYPE_IUNKNOWN |
| adLongVarBinary |
205 |
&HCD |
長バイナリ型。(Parameter のみ) |
| adLongVarChar |
201 |
&HC9 |
長文字列型。(Parameter のみ) |
| adLongVarWCharBinary |
203 |
&HCB |
Null 終了型の長文字列型。(Parameter のみ) |
| adNumeric |
131 |
&H83 |
DBTYPE_NUMERIC |
| adPropVariant |
138 |
&H8A |
undocumented |
| adSingle |
4 |
&H4 |
DBTYPE_R4 |
| adSmallInt |
2 |
&H2 |
DBTYPE_I2 |
| adTinyInt |
16 |
&H10 |
DBTYPE_I1 |
| adUnsignedBigInt |
21 |
&H15 |
DBTYPE_UI8 |
| adUnsignedInt |
19 |
&H13 |
DBTYPE_UI4 |
| adUnsignedSmallInt |
18 |
&H12 |
DBTYPE_UI2 |
| adUnsignedTinyInt |
17 |
&H11 |
DBTYPE_UI1 |
| adUserDefined |
132 |
&H84 |
DBTYPE_UDT |
| adVarBinary |
204 |
&HCC |
バイナリ型(Parameter のみ) |
| adVarChar |
200 |
&HC8 |
文字列型(Parameter のみ) |
| adVariant |
12 |
&HC |
DBTYPE_VARIANT |
| adVarNumeric |
139 |
&H8B |
undocumented |
| adVarWChar |
202 |
&HCA |
Null 終了型の Unicode 文字列。(Parameter のみ) |
| adWChar |
130 |
&H82 |
DBTYPE_WSTR |
State プロパティ(ADO)関連定数
State:非同期メソッドを実行している Recordset について現在の状態を示す
ObjectStateEnum で指定できる。
赤字部分はドキュメントに記載されていない補足部分。
| 定数名 |
数値 |
16進 |
説明 |
| adStateClosed |
0 |
&H0 |
デフォルトの値です。オブジェクトが閉じていることを示します。 |
| adStateOpen |
1 |
&H1 |
オブジェクトが開いていることを示します。 |
| adStateConnecting |
2 |
&H2 |
Recordset が接続中であることを示します。 |
| adStateExecuting |
4 |
&H4 |
Recordset がコマンドを実行中であることを示します。 |
| adStateFetching |
8 |
&H8 |
Recordset が行をフェッチ中であることを示します。 |
Status プロパティ(ADO)関連定数
Status:バッチ更新または他の一括操作に関するレコードの状態を示す。
RecordStatusEnum で指定できる。
赤字部分はドキュメントに記載されていない補足部分。
| 定数名 |
数値 |
16進 |
説明 |
| adRecOk |
0 |
&H0 |
更新成功。 |
| adRecNew |
1 |
&H1 |
新規レコード。 |
| adRecModified |
2 |
&H2 |
変更されたデータ。 |
| adRecDeleted |
4 |
&H4 |
削除されたレコード。 |
| adRecUnModified |
8 |
&H8 |
変更されていないレコード。 |
| adRecInvalid |
16 |
&H10 |
ブックマークが無効なため,変更は保存されない。 |
| adRecMultipleChanges |
64 |
&H40 |
複数の行に影響をするため,変更は保存されない。 |
| adRecPendingChanges |
128 |
&H80 |
未処理の挿入を参照するため,変更は保存されない。 |
| adRecCanceled |
256 |
&H100 |
操作がキャンセルされたため,変更は保存されない。 |
| adRecCantRelease |
1024 |
&H400 |
既存レコードがロックされているため,変更は保存されない。 |
| adRecConcurrencyViolation |
2048 |
&H800 |
共有ロックの同時実行のため,変更は保存されない。 |
| adRecIntegrityViolation |
4096 |
&H1000 |
ユーザーが整合性の制約に違反したため,変更は保存されない。 |
| adRecMaxChangesExceeded |
8192 |
&H2000 |
未処理の変更が多すぎたため,変更は保存されない。 |
| adRecObjectOpen |
16384 |
&H4000 |
開いているストレージオブジェクトとの競合のため,変更は保存されない。 |
| adRecOutOfMemory |
32768 |
&H8000 |
メモリ不足のため,変更は保存されない。 |
| adRecPermissionDenied |
65536 |
&H10000 |
権限がないため,変更は保存されない。 |
| adRecSchemaViolation |
131072 |
&H20000 |
データベースのスキーマに違反するため,変更は保存されない。 |
| adRecDBDeleted |
262144 |
&H40000 |
レコードが既にソースから削除されているため,変更は保存されない。 |
adRecConcurrencyViolation は,UpdateBatch による更新どうしの競合によって発生する。
adMaxChangesExceeded は,未処理状態の更新(.Update/.UpdateBatch か .UpdateCancel/.CancelBatch が投げられていない更新)の数が,Recordset が許容できる更新キャッシュ数を上回っているいる状態で,更新キャッシュが破棄されるような動作をすると再現する
許容更新キャッシュは,通常の Recordset では 1 で,バッチ更新を使用する場合は1以上の値に設定します。
ex) Recordset に更新をセットして,.Update しないまま .Close を実行すると,CONTEXT ERROR と共に発生。
CursorType 別,LockType 別 Supports 一覧(SQLOLEDB-UseServer)
| |
OpenForwardOnly |
OpenKeyset |
OpenDynamic |
OpenStatic |
| LockReadOnly |
Find Notifications (Open Method Default) (CMD Obj Rtn RS Default) |
AbsolutePosition and AbsolutePage Bookmark Find Holding Records MovePrevious and Move Notifications Resyncing data |
Find MovePrevious and Move Notifications |
AbsolutePosition and AbsolutePage Bookmark Find Holding Records MovePrevious and Move Notifications |
| LockPessimistic |
AddNew Delete Find Notifications Update batch updating |
AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
AddNew Delete Find MovePrevious and Move Notifications Update batch updating |
>OpenKeyset AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Update batch updating |
| LockOptimistic |
AddNew Delete Find Notifications Update batch updating |
AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
AddNew Delete Find MovePrevious and Move Notifications Update batch updating |
>OpenKeyset AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Update batch updating |
| LockBatchOptimistic |
AddNew Delete Find Notifications Update batch updating |
AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
AddNew Delete Find MovePrevious and Move Notifications Update batch updating |
>OpenKeyset AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Update batch updating |
「>」は強制変換
CursorType 別,LockType 別 Supports 一覧(SQLOLEDB-UseClient)
| |
OpenForwardOnly |
OpenKeyset |
OpenDynamic |
OpenStatic |
| LockReadOnly |
>OpenStatic AbsolutePosition and AbsolutePage Bookmark Find Holding Records MovePrevious and Move Notifications Resyncing data |
>OpenStatic AbsolutePosition and AbsolutePage Bookmark Find Holding Records MovePrevious and Move Notifications Resyncing data |
>OpenStatic AbsolutePosition and AbsolutePage Bookmark Find Holding Records MovePrevious and Move Notifications Resyncing data |
AbsolutePosition and AbsolutePage Bookmark Find Holding Records MovePrevious and Move Notifications Resyncing data |
| LockPessimistic |
>OpenStatic >LockBatchOptimistic AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
>OpenStatic >LockBatchOptimistic AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
>OpenStatic >LockBatchOptimistic AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
| LockOptimistic |
>OpenStatic AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
>OpenStatic AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
>OpenStatic AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
| LockBatchOptimistic |
>OpenStatic AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
>OpenStatic AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
>OpenStatic AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
「>」は強制変換
CursorType 別,LockType 別 Supports 一覧(JET_OLEDB-UseServer)
| |
OpenForwardOnly |
OpenKeyset |
OpenDynamic |
OpenStatic |
| LockReadOnly |
Find Notifications Resyncing date (Open Method Default) (CMD Obj Rtn RS Default) |
Bookmark Find Holding Records MovePrevious and Move Notifications Resyncing data |
>OpenStatic Find Holding Records MovePrevious and Move Notifications Resyncing data |
Bookmark Find Holding Records MovePrevious and Move Notifications Resyncing data |
| LockPessimistic |
>LockBatchOptimistic AddNew Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
>LockBatchOptimistic AddNew Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
>OpenKeySet >LockBatchOptimistic AddNew Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
>OpenKeySet >LockBatchOptimistic AddNew Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
| LockOptimistic |
AddNew Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
AddNew Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
>OpenKeySet AddNew Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
>OpenKeySet AddNew Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
| LockBatchOptimistic |
AddNew Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
AddNew Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
>OpenKeySet AddNew Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
>OpenKeySet AddNew Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
「>」は強制変換
CursorType 別,LockType 別 Supports 一覧(JET_OLEDB-UseClient)
| |
OpenForwardOnly |
OpenKeyset |
OpenDynamic |
OpenStatic |
| LockReadOnly |
>OpenStatic AbsolutePosition and AbsolutePage Bookmark Find Holding Records MovePrevious and Move Notifications Resyncing data |
>OpenStatic AbsolutePosition and AbsolutePage Bookmark Find Holding Records MovePrevious and Move Notifications Resyncing data |
>OpenStatic AbsolutePosition and AbsolutePage Bookmark Find Holding Records MovePrevious and Move Notifications Resyncing data |
Bookmark Find Holding Records MovePrevious and Move Notifications Resyncing data |
| LockPessimistic |
>OpenStatic >LockBatchOptimistic AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
>OpenStatic >LockBatchOptimistic AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
>OpenStatic >LockBatchOptimistic AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
>LockBatchOptimistic AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
| LockOptimistic |
>OpenStatic AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
>OpenStatic AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
>OpenStatic AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
| LockBatchOptimistic |
>OpenStatic AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
>OpenStatic AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
>OpenStatic AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
AddNew AbsolutePosition and AbsolutePage Bookmark Delete Find Holding Records MovePrevious and Move Notifications Resyncing data Update batch updating |
「>」は強制変換
ADODB エラーパターン
ADO ロック取得待ちタイムアウト
| Number |
Native Error |
SQLState |
内容 |
| -2147217871 |
none |
HYT00 |
時間切れになりました。 (Microsoft OLE DB Provider for SQL Server) |
コネクション接続前にネットワーク切断
| Number |
Native Error |
SQLState |
内容 |
| -2147467259 |
1231 |
01000 |
[DBNMPNTW]Connection Open(Create File()) |
コネクション接続後にネットワーク切断
| Number |
Native Error |
SQLState |
内容 |
| -2147467259 |
0 |
08S01 |
接続できません。 |
Recordset 作成後,Execute 時にネットワーク切断
| Number |
Native Error |
SQLState |
内容 |
| -2147467259 |
64 |
01000 |
[DBNMPNTW]Connection Write(GetOverLappedResult()) |
Recordset 作成後,BatchUpdate 時にネットワーク切断
| Number |
Native Error |
SQLState |
内容 |
| -2147467259 |
64 |
01000 |
[DBNMPNTW]Connection Transact(GetOverLappedResult()) |
JET DB Engine の削除エラー
| Number |
Native Error |
SQLState |
内容 |
| -2147467259 |
-199756777 |
3086 |
指定したテーブルから削除できませんでした。 |
Office 2007 用 2003 互換リボン のRelease 1.0 を公開しました。
インストール手順の詳細はこちらを参照してください。(ベータ時のものです)
【Office Excel】Excel 2007 に Excel 2003 に似せたメニューを追加する
http://blogs.timberlandchapel.com/blogs/timberlandchapel/archive/2007/09/06/office-excel-excel-2007-excel-2003.aspx
ダウンロードはこちら
【Office 2007】TLC.com Excel 2007 用 「Excel 2003 互換メニュー」 アドイン Release 1.0
http://blogs.timberlandchapel.com/files/folders/officesystem/entry2186.aspx
【Office 2007】TLC.com Word 2007 用 「Word 2003 互換メニュー」 アドイン Release 1.0
http://blogs.timberlandchapel.com/files/folders/officesystem/entry2187.aspx
インストールパッケージの更新を行いました。
Excel 用と Word 用の2つのインストールパッケージとして公開しています。
今後,PowerPoint 用のリボンの開発が終わったところで,3本まとめてインストールできたらいいなと思います。
統合パッケージを公開しました。
http://blogs.timberlandchapel.com/blogs/timberlandchapel/archive/2008/10/13/OfficeInteropRibbon.aspx
既存のベータパッケージをアンインストールして,新しいパッケージを導入してください。
大変お手数をおかけいたします。
powered by TimberLandChapel
Sandcastle January 2008 Release
Sandcastle は Visual Studio で作成した xml コメントをヘルプファイルや web ヘルプにコンパイルするためのツールです。
Visual Studio 2003 の開発環境では NDoc というコミュニティプロダクトが提供されていましたが,この NDoc の後継として位置づけられるでしょう。現在の Sandcastle は提供場所を Codeplex に移して,January 2008 が提供されています。
今回は,この Sandcastle January 2008 Release のインストールと日本語ドキュメントを生成するためのローカライズについてまとめます。
この記事は,
Visual Studio 2005 Servide Pack 1 に基づいて記述しています。
この記事は以下のブランチにわかれています。
Sandcastle January 2008 のインストレーションレポート
http://blogs.timberlandchapel.com/blogs/timberlandchapel/archive/2008/03/22/sandcastleInstall.aspx
Sandcastle January 2008 のローカライズ
http://blogs.timberlandchapel.com/blogs/timberlandchapel/archive/2008/03/22/sandcastlelocalize.aspx
Sandcastle January 2008 のヘルプ作成
作成中
Help 1.x は chm 形式にコンパイルされてすぐに確認できるので簡単ですが,
おそらく Help 2.x の HxS 形式は結構手を焼くんじゃないでしょうか。。。
Visual Studio で [Help Integration Project] を組んでしまうのが一番楽そうなんですが,このあたりについてまとめる予定
シナリオと要件
Sandcastle January 2008 Release で日本語ドキュメントを生成するためにローカライズを行います。
この記事は,
Sandcastle January 2008 Release に基づいて記述しています。
ローカライズのポイント
[Sandcastle January 2008 Release] + [Sandcastle Help File Builder 1.6.0.4] は,デフォルトのインストールでも言語の選択肢に「日本語(日本)」が使用できる状態になっていますが,対応する日本語コンテンツファイルが存在していないために結局は英語のドキュメントとして作成されてしまいます。
ということは,2つのツールのコンテンツに「ja-JP」のローカライズ版を追加してやればうまくいくはずです。この辺は .NET アプリケーションのローカライズのアーキテクチャから予想します。
該当するコンテンツファイルは
- .\Sandcastle Help File Builder\SharedContent
- .\Sandcastle\Presentation
の2ヵ所に存在するようです。
また,「.\Sandcastle\Presentation」には,1つの共用コンテンツと,3つのテンプレートに対応したコンテンツが格納されています。
これらのコンテンツフォルダの中に,日本語に対応する「ja-JP」フォルダを作成して,英語のコンテンツをコピーして逐次訳していけばローカライズすることができます。
手順は以下の通りです。
1 「.\Sandcastle Help File Builder\SharedContent」内の4つの「***BuilderContent_ja-JP.xml」ファイルをローカライズする
2 「.\Sandcastle\Presentation\hana\Content」内に「ja-JP」フォルダを作って,4つのファイルをローカライズする
3 「.\Sandcastle\Presentation\Prototype\content」内に「ja-JP」フォルダを作って,4つのファイルをローカライズする
4 「.\Sandcastle\Presentation\Shared\content」内に「ja-JP」フォルダを作って,「syntax_content.xml」をローカライズする
5 「.\Sandcastle\Presentation\vs2005\Content」内に「ja-JP」フォルダを作って,6つのファイルをローカライズする
「.\Sandcastle Help File Builder\SharedContent」はフィードバック関連のローカライズ,「.\Sandcastle\Presentation」はヘルプ本体のローカライズに対応するようです。
ローカライズ作業
TimberLandChapel.com でローカライズしたコンテンツファイルをダウンロードに用意してみました。
全てのテンプレートとフィードバックコンテンツのローカライズをしてありますが,フィードバック先の表現など一部変更しなければならないところは残っていると思います。
zip ファイルを解凍して,それぞれ [Sandcastle] と [Sandcastle Help File Builder] をインストールしたフォルダに上書きコピーすればローカライズできるようになっています。
なるべく正規の MSDN 内の表現にあわせてローカライズしましたが,問題等ありましたらフィードバックいただければ。
Sandcastle January 2008 + Sandcastle Help File Builder 1.6.0.4 の生成ドキュメントを日本語化するコンテンツファイル(SHIFT-JIS)
http://blogs.timberlandchapel.com/files/folders/visual_studio/entry2179.aspx
Sandcastle January 2008 + Sandcastle Help File Builder 1.6.0.4 の生成ドキュメントを日本語化するコンテンツファイル(UTF-8)
http://blogs.timberlandchapel.com/files/folders/visual_studio/entry2204.aspx
シナリオと要件
Sandcastle January 2008 Release をインストールします。
この記事は,
Sandcastle January 2008 Release に基づいて記述しています。
関連リソース
まずは,関連リソースの取得元のリストです。注意が必要なのは,Sandcastle のダウンロード先が Codeplex に移ったことでしょうか。
Sandcastle January 2008
http://www.codeplex.com/Sandcastle/Release/ProjectReleases.aspx?ReleaseId=9921
Sandcastle Help File Builder 1.6.0.4
http://www.codeplex.com/SHFB/Release/ProjectReleases.aspx?ReleaseId=9848
HTML Help Workshop (Japanese version)
http://msdn2.microsoft.com/en-us/library/ms669985(VS.85).aspx
Visual Studio .NET Help Integration Kit 2003
http://www.microsoft.com/downloads/details.aspx?FamilyID=ce1b26dc-d6af-42a1-a9a4-88c4eb456d87&DisplayLang=en
Visual Studio 2005 SDK Version 4.0
http://www.microsoft.com/downloads/details.aspx?FamilyID=51A5C65B-C020-4E08-8AC0-3EB9C06996F4&displaylang=en
Sandcastle Blog
http://blogs.msdn.com/sandcastle/default.aspx
Sandcastle - Documentation Compilers for Managed Class Library
http://msdn2.microsoft.com/en-us/vstudio/bb608422.aspx
Sandcastledocs.com
http://www.sandcastledocs.com/Wiki%20Pages/Home.aspx
今回インストールするのは,Sandcastle で Help 1.x と Help 2.x をコンパイルするのに最低限必要な以下のワンセットです。
基本セット
- Sandcastle January 2008
- Sandcastle Help File Builder 1.6.0.4
Help 1.x
- HTML Help Workshop (Japanese version)
Help 2.x
- Visual Studio 2005 SDK Version 4.0
Sandcastle January 2008
まずは,根本の Sandcastle January 2008 をインストールしましょう。ダウンロードしてきた [Sandcastle.msi] を実行します。
1 [Sandcastle Setup Wizard] が起動します。[Next] をクリックします
2 EULA が表示されるので,[I accept ...] をチェックして [Next] をクリックします
3 インストール先のフォルダを指定します。デフォルトの設定を使用します
4 設定は以上です。[Install] をクリックしてインストールを開始します
5 インストールの経過が表示されます
6 以上で [Sandcastle] のセットアップは終了です
Sandcastle Help File Builder 1.6.0.4
Sandcastle は基本コマンドラインツールなので,GUI で操作するためのコミュニティツールが提供されています。
Sandcastle Help File Builder 1.6.0.4 が Sandcastle January 2008 に対応したリリースです。これを利用すると,NDoc の操作と同じような GUI でヘルプをビルドできるようになります。
1 [Sandcastle Help File Builder Setup Wizard] が起動します。[Next] をクリックします
2 インストール先のフォルダとインストールするユーザーを指定します。
デフォルトでは,「EWSoftware」が指定されますが,これを削除しておいた方が,Sandcastle の隣にフォルダがくるので便利でしょう。
3 設定は以上です。[Install] をクリックしてインストールを開始します
4 インストールの経過が表示されます
5 以上で [Sandcastle Help File Builder] のセットアップは終了です
Help Workshop と Visual Studio 2005 SDK
Sandcastle では Microsoft Help 1.x 形式と Microsoft Help 2.x のヘルプをコンパイルすることができますが,それぞれのヘルプ形式をコンパイルするために必要なリソースがあります。
Help 1.x 形式は [HTML Help Workshop] をインストールすることでコンパイルできるようになります。
Help 2.x 形式は [Visual Studio 2005 SDK] に含まれるツールキットのインストールをすることでコンパイルできるようになります。
[HTML Help Workshop] のインストールは簡単です。
1 インストールの注意が表示されます。
Windows のインストールフォルダを変更している場合は注意して下さい
2 インストール先のフォルダを確認して [Unzip] をクリックすれば終了です
[Visual Studio 2005 SDK] は開発用のツール群としてインストールされます。
1 [Visual Studio 2005 SDK Setup] が起動します。[Next] をクリックします
2 EULA が表示されるので,[I accept ...] をチェックして [Next] をクリックします
3 インストールするコンポーネントを選びます。
直接は関係ありませんが [Innovasys HelpStudio Lite] もインストールしておくとよいでしょう
4 インストール先のフォルダを指定します
5 インストールの経過が表示されます
6 SDK のインストールが終わると,[Innovasys HelpStudio Lite] のセットアップが起動します
7 [Next] をクリックするとインストールが開始されます
8 インストールの経過が表示されます
9 特にオプションはなくインストールが完了します
10 2つのコンポーネントがセットアップされると終了します