Cómo: Quitar extensiones de código administrado de documentos (2007 System)
Actualización: noviembre 2007
Se aplica a |
---|
La información de este tema sólo se aplica a los proyectos y versiones especificados de Visual Studio Tools para Office de Microsoft Office. Tipo de proyecto
Versión de Microsoft Office
Para obtener más información, vea Características disponibles por aplicación y tipo de proyecto. |
Puede quitar mediante programación el ensamblado de personalización de Visual Studio Tools para Office de un documento o libro que forma parte de una personalización de nivel de documento para Microsoft Office System 2007. Los usuarios pueden abrir los documentos y ver el contenido, pero cualquier interfaz de usuario personalizada que agregue no aparecerá y el código no se ejecutará.
Puede quitar el ensamblado de personalización utilizando uno de los métodos RemoveCustomization que proporciona el tiempo de ejecución de Visual Studio Tools para Office. El método que use depende de si desea quitar la personalización en tiempo de ejecución (es decir, ejecutando el código en la solución de Visual Studio Tools para Office ) o desde un documento cerrado o un documento que está en un servidor que no tiene instalado Microsoft Office.
Para quitar el ensamblado de personalización en tiempo de ejecución
- En el proyecto de nivel de documento, llame al método Document.RemoveCustomization (para Word) o al método Workbook.RemoveCustomization (para Excel).
Para quitar el ensamblado de personalización desde un documento cerrado o desde un documento de un servidor
Cree un nuevo proyecto que no inicie Word o Excel, por ejemplo, una aplicación de consola o un proyecto de formularios Windows Forms.
Agregue al proyecto una referencia al ensamblado Microsoft.VisualStudio.Tools.Applications.ServerDocument.v9.0.dll.
Agregue la siguiente instrucción Imports o using al principio del archivo de código.
Imports Microsoft.VisualStudio.Tools.Applications
using Microsoft.VisualStudio.Tools.Applications;
Llame al método estático RemoveCustomization de la clase ServerDocument y especifique la ruta de acceso del documento de la solución para el parámetro.
En el ejemplo de código siguiente se supone que está quitando la personalización de un documento denominado WordDocument1.docx que está en el escritorio.
Dim documentPath As String = System.Environment.GetFolderPath( _ Environment.SpecialFolder.Desktop) & "\WordDocument1.docx" Dim runtimeVersion As Integer = 0 Try runtimeVersion = ServerDocument.GetCustomizationVersion(documentPath) If runtimeVersion = 3 Then ServerDocument.RemoveCustomization(documentPath) System.Windows.Forms.MessageBox.Show("The customization has been removed.") End If Catch ex As FileNotFoundException System.Windows.Forms.MessageBox.Show("The specified document does not exist.") Catch ex As IOException System.Windows.Forms.MessageBox.Show("The specified document is read-only.") Catch ex As InvalidOperationException System.Windows.Forms.MessageBox.Show("The customization could not be removed." & _ vbLf & ex.Message) End Try
string documentPath = System.Environment.GetFolderPath( Environment.SpecialFolder.Desktop) + @"\WordDocument1.docx"; int runtimeVersion = 0; try { runtimeVersion = ServerDocument.GetCustomizationVersion(documentPath); if (runtimeVersion == 3) { ServerDocument.RemoveCustomization(documentPath); System.Windows.Forms.MessageBox.Show("The customization has been removed."); } } catch (FileNotFoundException) { System.Windows.Forms.MessageBox.Show("The specified document does not exist."); } catch (IOException) { System.Windows.Forms.MessageBox.Show("The specified document is read-only."); } catch (InvalidOperationException ex) { System.Windows.Forms.MessageBox.Show("The customization could not be removed.\n" + ex.Message); }
Vea también
Tareas
Cómo: Escribir código que utilice ambas versiones de la clase ServerDocument
Cómo: Asociar extensiones de código administrado a documentos (2007 System)
Cómo: Quitar extensiones de código administrado de documentos (2003 System)
Cómo: Asociar extensiones de código administrado a documentos (2003 System)
Conceptos
Administrar documentos en un servidor mediante la clase ServerDocument