DOCX ファイルが移動または名前変更された場合にそれらを識別する方法を探しています。理由は明らかです。私は Open XML SDK をいじり、ハイパーリンク チェッカーを構築しています。
完璧に機能します。少なくとも、ドキュメント内のハイパーリンクを追加または更新できます。
ただし、問題は、外部ファイルの名前を変更すると (source.docx + target.docx から targetB.docx に) リンクが壊れることです。壊れたリンクを見つけることができます (リンクされたファイルが所定の場所にあるかどうかを確認するだけです)。
でももっと欲しい。ディレクトリ(docx)内のすべてのドキュメントを検索し、それらが「ターゲット」であるかどうかをスキャンすることにより、この失われたリンクを回復できるようにしたいと考えています。最も簡単な方法は、ドキュメント プロパティのどこかに GUID を保存することです。この GUID は、ドキュメントの名前が変更されたり編集されたりしても変更されません (チェックサムは適用されません)。
次に、リンクとそれに応じた ID の個別のリストを作成し、ドキュメントの名前が変更された場合は、リンクを更新するだけです。コンセプトが明確であることを願っています。
したがって、いくつかの基本的な質問があります。
- この「カスタム情報」を Open XML ドキュメントに保存するための「ベスト プラクティス」はありますか
- ワードプロセッシング ドキュメント (DOCX) には、Word によって作成された一意の識別子が既に含まれていますか?
- マッピングを保存する場所 (ハイパーリンク ターゲットの GUID)
質問が明確であることを願っています。明確にしようとしない場合は、質問があればコメントしてください..
ありがとう、クリス