2009-07-28 5 views

ответ

2

Вы не можете.

В зависимости от того, какой сценарий вы пытаетесь избежать, вы можете обладать свойствами, зашифровав содержимое каким-либо образом. Это затруднит пользователю понять, как изменить их на что-то полезное, но не помешает пользователю «сломать» его.

0

Вместо использования свойств документа используют переменные документа (http://msdn.microsoft.com/en-us/library/bb212231.aspx). Вы можете получить доступ к ним только через код. Для них нет пользовательского интерфейса.

Вот некоторые функции/VBA старый VB6 я использовал для них:

Public Sub SetVariable(oDocument As Word.Document, sName As String, sValue As String) 

     Dim oVariable As Word.Variable 

     Set oVariable = LocateVariable(oDocument, sName) 

     If Not oVariable Is Nothing Then 

      oVariable.Value = sValue 

     Else 

      oDocument.Variables.Add sName, sValue 

     End If 

End Sub 

Public Function GetVariable(oDocument As Word.Document, sName As String) As String 

     Dim oVariable As Word.Variable 

     Set oVariable = LocateVariable(oDocument, sName) 

     If Not oVariable Is Nothing Then 

      GetVariable = oVariable.Value 

     Else 

      GetVariable = "" 

     End If 

End Function 

Public Function LocateVariable(oDocument As Word.Document, sName As String) As Word.Variable 

     Dim oVariable As Word.Variable 

     For Each oVariable In oDocument.Variables 

      If StrComp(oVariable.Name, sName, vbTextCompare) = 0 Then 

       Set LocateVariable = oVariable 

       Exit Function 

      End If 

     Next 

     Set LocateVariable = Nothing 

End Function 
Смежные вопросы