Browse Source

安全 -- 修复仅有权限密码时鉴权出错的问题,修复某些限制功能下密码随意输入都能开启且下次仍需输入密码的问题。

liuaoran 1 year ago
parent
commit
598f3c9c01

BIN
PDF Office/ComPDFKit.Desk.dll


BIN
PDF Office/ComPDFKit.Viewer.dll


+ 9 - 7
PDF Office/ViewModels/Dialog/ToolsDialogs/SaftyDialogs/CheckPasswordDialogViewModel.cs

@@ -28,9 +28,10 @@ namespace PDF_Master.ViewModels.Dialog.ToolsDialogs.SaftyDialogs
             get { return _password; }
             set
             {
-                SetProperty(ref _password, value); 
+                SetProperty(ref _password, value);
                 IsRightValue = "unknow";
-                if (!string.IsNullOrEmpty(value)){
+                if (!string.IsNullOrEmpty(value))
+                {
                     ClearPasswordButtonVisibility = Visibility.Visible;
                 }
                 else
@@ -65,9 +66,10 @@ namespace PDF_Master.ViewModels.Dialog.ToolsDialogs.SaftyDialogs
         public string IsRightValue
         {
             get { return _isRightValue; }
-            set { 
+            set
+            {
                 SetProperty(ref _isRightValue, value);
-                if(value == "false")
+                if (value == "false")
                 {
                     ErrorPasswordMsgVisibility = Visibility.Visible;
                 }
@@ -123,8 +125,8 @@ namespace PDF_Master.ViewModels.Dialog.ToolsDialogs.SaftyDialogs
             }
             else
             {
-                if (tempDocument.CheckOwnerPassword(Password))
-                {  
+                if (tempDocument.UnlockWithPassword(Password) && tempDocument.CheckOwnerPassword(Password))
+                {
                         var dialogResult = new DialogResult(ButtonResult.OK);
                         dialogResult.Parameters.Add(ParameterNames.Password, Password);
                         dialogResult.Parameters.Add(ParameterNames.PasswordResult, true);
@@ -147,7 +149,7 @@ namespace PDF_Master.ViewModels.Dialog.ToolsDialogs.SaftyDialogs
 
         private void ClearPassword()
         {
-            Password= "";
+            Password = "";
         }
         #endregion
 

+ 2 - 2
PDF Office/ViewModels/Dialog/ToolsDialogs/SaftyDialogs/DeleteSafetySettingsDialogViewModel.cs

@@ -175,8 +175,8 @@ namespace PDF_Master.ViewModels.Dialog.ToolsDialogs.SaftyDialogs
 
             viewContentViewModel.SecurityInfo.NeedOpenPassword = false;
             viewContentViewModel.SecurityInfo.NeedPermissionsPassword = false;
-            viewContentViewModel.SecurityInfo.OpenPassword = null;
-            viewContentViewModel.SecurityInfo.PermissionsPassword = null;
+            viewContentViewModel.SecurityInfo.OpenPassword = string.Empty;
+            viewContentViewModel.SecurityInfo.PermissionsPassword = string.Empty;
             viewContentViewModel.SecurityInfo.CPDFPermissionsInfo = CreateDefaultPermissionsInfo();
             viewContentViewModel.SecurityInfo.IsPasswordRemoved = true;
             viewContentViewModel.SecurityInfo.IsPasswordChanged = false;

BIN
PDF Office/x64/ComPDFKit.dll