He desarrollado una aplicación simple C# Winforms que carga documentos de MS-Word 2007 a través de la automatización COM.Configurando programáticamente la configuración del Centro de confianza de MS-Word usando C#
Todo esto es muy simple y sencillo, sin embargo, según el documento, necesito habilitar o deshabilitar las macros de manera programática, así como los controles ActiveX.
Probablemente haya una manera de almacenar esto en el registro, pero quiero controlar esta configuración instancia por instancia, ya que varias solicitudes simultáneas pueden estar ejecutándose a la vez.
Así que mi pregunta es 'cómo configuro la configuración del centro de confianza usando la automatización COM'.
He buscado en Google durante horas, pero todo lo que he podido encontrar es la propiedad Application.AutomationSecurity, pero esto sólo acepta los siguientes valores:
- MsoAutomationSecurity.msoAutomationSecurityLow
- MsoAutomationSecurity.msoAutomationSecurityForceDisable
- MsoAutomationSecurity.msoAutomationSecurityByUI
El Word 2007 Trust Center expone sin embargo el siguientes ajustes:
Macro Ajustes:
- Deshabilitar todas las macros sin notificación (partidos msoAutomationSecurityForceDisable)
- Deshabilitar todas las macros con notificaciones (no necesito éste)
- Deshabilitar todas las macros excepto digitalmente macros firmadas (No hay equivalente)
- Habilitar todas las macros (partidos) msoAutomationSecurityLow
alt text http://www.visguy.com/wp-content/uploads/2007/05/v2007-security-settings.png
controles ActiveX (configurados por separado, no he encontrado ninguna manera de controlar estos, cabe destacar que de acuerdo con la pantalla estos valores son compartidos entre todas las aplicaciones)
- Desactivar todos los controles sin notificación
- Preguntarme antes de habilitar los controles UFI ....
- Preguntarme antes de habilitar todos los controles con etricciones mínimas
- permitir que todos los controles sin restricciones
He intentado el viejo truco de la grabación de una macro MS-Word al cambiar estos ajustes, pero ninguno de estos pasos se registran.
Actualización: He encontrado las siguientes entradas para la configuración de controles ActiveX en el registro.Parece que la configuración de ActiveX es global y no se puede especificar para una sola instancia de MS-Word a menos que alguien me demuestre que está equivocado.
ActiveX discapacitados
[HKEY_CURRENT_USER \ Software \ Microsoft \ Office \ Common \ Security] "DisableAllActiveX" = dword: 00000001 "UFIControls" = dword: 00000002
ActiveX Se activa con el modo seguro
[HKEY_CURRENT_USER \ Software \ Microsoft \ Office \ Common \ Security] "DisableAllActiveX" = dword: 00000000 "UFIControls" = dword: 00000002
ActiveX habilita sin modo seguro
[HKEY_CURRENT_USER \ Software \ Microsoft \ Office \ Common \ Security] "DisableAllActiveX" = dword: 00000000 "UFIControls" = dword: 00000001
Aún dispuestos a resolver la macro problema de configuración