デジタル文書の保護は常にホットな話題です。 Word文書に関する限り、MS Wordは、文書へのユーザーのアクセスを制限するいくつかのコンテンツ保護機能を提供します。パスワードでドキュメントを保護し、必要な制限を適用して不正アクセスを回避できます。これに従って、この記事では、C++アプリケーション内でWord文書の保護を自動化する方法について説明します。特に、C++を使用してWord文書を保護および保護解除する方法を学習します。
Word文書を保護/保護解除するC++API
Aspose.Words for C++は、C++アプリケーション内でMSWordドキュメントを作成および操作するために構築されています。 APIは、Word文書の保護と保護解除もカバーする、基本的な文書操作機能と高度な文書操作機能を提供します。 APIパッケージをダウンロードするか、NuGetからインストールできます。
PM> Install-Package Aspose.Words.Cpp
C++を使用してWord文書を保護する
Aspose.Words for C++では、ユーザーのドキュメントへのアクセスを制限するために、次の保護タイプを使用できます。
- AllowOnlyComments-ドキュメント内のコメントの変更が許可されます。
- AllowOnlyFormFields-ユーザーは、ドキュメントのフォームフィールドにのみデータを入力できます。
- AllowOnlyRevisions-ユーザーはドキュメントにリビジョンマークを追加することしかできません。
- 読み取り専用-ドキュメントへの変更は許可されていません(Microsoft Word 2003以降で使用可能)。
- NoProtection-ドキュメントは保護されていません。
以下は、Word文書を保護するための手順です。
- ファイルのパスを指定して、Documentクラスを使用してMSWord文書をロードします。
- Document->Protect(ProtectionType, String)メソッドを使用して、保護タイプとパスワードを指定してドキュメントを保護します。
- Document->Save(String)メソッドを使用してドキュメントを保存します。
次のコードサンプルは、C++を使用してWord文書を保護する方法を示しています。
// Wordドキュメントを読み込む
System::SharedPtr<Document> doc = System::MakeObject<Document>(inputFileName);
// ドキュメントを保護する
doc->Protect(ProtectionType::AllowOnlyFormFields, u"password");
// ドキュメントを保存する
doc->Save(u"protected.doc");
C++を使用してWord文書の保護を解除する
Aspose.Words for C++を使用すると、パスワードがわからない場合でもMSWordドキュメントの保護を解除できます。パスワードで保護されたWord文書の保護を解除するには、次の手順に従います。
- Documentクラスを使用してMSWord文書をロードします。
- Document->Unprotect()メソッドを使用して、Wordドキュメントの保護を解除します。
- Document->Save(String)メソッドを使用してドキュメントを保存します。
// Wordドキュメントを読み込む
System::SharedPtr<Document> doc = System::MakeObject<Document>(inputFileName);
// ドキュメントの保護を解除する
doc->Unprotect();
// ドキュメントを保存する
doc->Save(u"unprotected.doc");
無料ライセンスを取得する
評価の制限なしにAPIを試すために、無料の一時ライセンスを取得できます。
結論
MS Word文書保護は、許可されていないユーザーから文書を保護するために広く実践されてきました。この記事では、Word文書を保護する方法と、C++を使用してパスワードで保護された文書の保護を解除する方法について説明しました。 ドキュメントを使用して、C++WordAPIの詳細を調べることができます。