Мне удалось добавить пользовательские свойства (метаданные) для MS Word из VBA, но как сделать его только для чтения, чтобы его нельзя было легко изменить?Только для чтения Пользовательские свойства
0
A
ответ
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
Смежные вопросы
- 1. Свойства только для чтения
- 2. Пользовательские PropertyDescriptor всегда только для чтения
- 3. Объект только для чтения свойства
- 4. Angular2 - свойства только для чтения
- 5. ScriptControlDescriptor.AddProperty & Только для чтения Свойства
- 6. Назначение только для чтения свойства
- 7. Jasper сообщает пользовательские свойства для чтения экспортера
- 8. ValidationMessageFor свойства только для чтения, или один ValidationMessageFor два свойства
- 9. Свойства только для чтения в веб-службах
- 10. Невозможно назначить только для чтения свойства '__esModule'
- 11. только для чтения свойства протоколов Swift
- 12. свойства только для чтения в PHP?
- 13. Сделать свойства отображенной объекта только для чтения
- 14. Настройка свойства WindowHeight (только для чтения)
- 15. breezejs: нескалярные навигационные свойства только для чтения
- 16. Заглушка только для чтения свойства в BaseClass
- 17. AutoFixture.AutoMoq: заданное значение только для чтения свойства
- 18. MATLAB: Set наследуемые свойства только для чтения
- 19. Serialize производного свойства только для чтения
- 20. как делает работу только для чтения свойства
- 21. BLToolkit: общедоступные свойства только для чтения
- 22. Настройка свойства только для чтения по методу
- 23. Добавление настраиваемого свойства или замена свойства только для чтения
- 24. переопределения только для чтения свойства, чтобы сделать его прочитать написать
- 25. Пользовательские свойства бинарного файла для чтения/записи офиса SharePoint 2003
- 26. Если структура C# имеет только свойства только для чтения
- 27. Свойства, доступные только для чтения, но только за пределами класса
- 28. свойство только для чтения
- 29. Использует YIELD для чтения только для чтения?
- 30. Как реализовать KVO для свойства NSArray, полученного только для чтения?