如何在C++中删除Word文档的写保护

How can I remove the write protection of a Word Document in C++?

本文关键字:Word 文档 写保护 删除 C++      更新时间:2023-10-16

我正在将Word文档从服务器复制到我的%localappdata%temp-Directory中。但是该文档是写保护的,我无法修改或删除它。我不想手动删除保护,它需要自动完成

我复制和删除保护的代码是

CopyFile(strTemplate, userTempDir, TRUE);
        SetFileAttributesA(userTempDir, FILE_ATTRIBUTE_NORMAL);

strTemplate是服务器上的 PathToFile,userTempDir是复制到目录的 PathToFile(在本例中为 "%localappdata%\temp\copy.doc"(

SetFileAttributesA(userTempDir, FILE_ATTRIBUTE_NORMAL);

不行。我对C++很陌生,所以我不知道如何删除写保护

SetFileAttributes(userTempDir, GetFileAttributes(userTempDir) &~FILE_ATTRIBUTE_READONLY);

这将删除只读属性(如果有(