Ist der Schutz ohne Kennwort oder weisst du das Kennwort? Wenn ja, kannst du einfach den Dokumentschutz aufheben und wieder setzen:
Delphi-Quellcode:
doc: Word2002_TLB._Document;
procedure ReProtect(protectType: TOleEnum; pwd: String = '');
var
v1, v2, v3: OleVariant;
begin
try
if protectType <> wdNoProtection then begin
v1 := protectType;
v2 := true;
v3 := pwd;
doc.Protect(v1, v2, v3);
end;
except
// Fehler bei passwortgeschützten Dokumenten unterdrücken
end;
end;
function UnProtect(pwd: String = ''): TOleEnum;
var
v1: OleVariant;
begin
result := doc.ProtectionType;
try
if doc.ProtectionType <> wdNoProtection then begin
v1 := pwd;
doc.Unprotect(v1);
end;
except
// Fehler bei passwortgeschützten Dokumenten unterdrücken
end;
end;