Compartir a través de


Creación manual de una solución

Última modificación: miércoles, 13 de abril de 2011

Hace referencia a: SharePoint Foundation 2010

En este tema se proporciona información general acerca de los paquetes de solución y cómo crearlos manualmente.

Nota importanteImportante

Visual Studio incluye herramientas que simplifican (y automatizan en gran medida) la creación y configuración de paquetes de solución. Se recomienda usar estas herramientas. Este tema se proporciona solo como información general para los casos especiales en que es posible que deba editar uno de los archivos fuera de las herramientas de Visual Studio y para los programadores que no tengan Visual Studio.

Paquetes de solución

Un paquete de solución es un archivo .cab con extensión .wsp. Siempre incluye un archivo de manifiesto y también puede contener algunos de los siguientes componentes (o todos ellos):

  • Definiciones de sitios (onet.xml, webtemp*.xml y, posiblemente, default.aspx)

  • Directivas de seguridad de acceso a código

  • Modificaciones realizadas en web.config

  • Archivos de plantilla y archivos raíz, que pueden incluir lo siguiente:

    • Páginas de aplicación (*.aspx)

    • Recursos (*.resx)

    • Archivos de recursos (por ejemplo, *.doc o *.xls)

    • Controles de usuario (*.ascx)

  • Ensamblados que no son de SharePoint, como bibliotecas de clases administradas personalizadas. Se pueden implementar junto con los siguientes elementos:

    • Entradas de controles seguros

    • Recursos

  • Definiciones de características, y sus correspondientes archivos y definiciones de elementos. Algunas de las cosas que puede haber en una característica son las siguientes:

    • Archivos de elementos web (*.webpart, *.dwp)

    • Instancias de lista y plantillas de lista

    • Tipos de contenido y tipos de campos personalizados

    • Modelos BCS y BDC

    • Receptores de eventos

    • Páginas del sitio (*.aspx)

    • Ensamblados para elementos web u otras clases personalizadas de SharePoint Foundation. Se pueden implementar junto con los siguientes elementos:

      • Entradas de controles seguros

      • Recursos

Los archivos de solución tienen una estructura jerárquica (hay un archivo de manifiesto en la raíz), mientras que los directorios de definición de sitios, recursos o características se incluyen en subdirectorios.

Los archivos de una definición de característica o sitio concreta se deben colocar en el subdirectorio de dicha definición de característica o sitio.

Nota

Esta estructura de directorios dentro del archivo .wsp determina la estructura de directorios final en el sistema de archivos del servidor front-end web. Sin embargo, la estructura de directorios dentro del Explorador de soluciones que se produce mediante las herramientas de Visual Studio, generalmente, no es una coincidencia exacta para la estructura de directorios del servidor front-end web.

Para crear un paquete de solución manualmente, siga estos pasos:

  1. Cree un archivo manifest.xml para la solución.

    El manifiesto de la solución (que siempre se denomina manifest.xml) se almacena en la raíz de un archivo de solución. Este archivo define la lista de características, las definiciones de sitio, los archivos de recursos, los archivos de elementos web y los ensamblados que se van a procesar. No define la estructura de archivos (si los archivos se incluyen en una solución, pero no en el archivo XML de manifiesto, no se procesan de ningún modo).

    A continuación se incluye la estructura de un archivo manifest.xml.

    <Solution SolutionId="4AFC1350-F354-4439-B941-51377E845F2B" xmlns="https://schemas.microsoft.com/sharepoint/">
      <FeatureManifests>
        <FeatureManifest Location="FeatureLibrary\feature.xml"/>
      </FeatureManifests>
      <TemplateFiles>
        <TemplateFile Location="ControlTemplates\Featurelibraryform.ascx"/>
      </TemplateFiles>
      <RootFiles> 
      <!-- These files go into the 12\ directory and can be used for Web services and global resources -->
        <RootFile Location="ISAPI\MyWebService.asmx">
      </RootFiles>
      <Assemblies>
        <Assembly  DeploymentTarget="GlobalAssemblyCache" 
    Location="ms.samples.sharepoint.myFeature.dll"/>
      </Assemblies>
    </Solution>
    

    Además, puede agregar un elemento DwpFiles para especificar archivos .webpart o .dwp, o un elemento ResourceFiles para especificar archivos de recursos, definiciones de sitio, recursos de aplicación y directivas de seguridad de acceso a código.

  2. Si tiene características en el paquete, cada una de ellas tiene un archivo feature.xml. Para cada archivo del manifiesto del elemento de la característica (elements.xml) de la característica, agregue una etiqueta ElementFile que apunte al manifiesto del elemento de la característica.

  3. Cree el paquete de solución (el archivo .wsp).

    Dado que el archivo de la solución es esencialmente un archivo .cab, use la herramienta makecab.exe para crear el paquete de soluciones. La herramienta makecab.exe agrega un puntero a un archivo .ddf (Diamond Directive File) que describe la estructura del archivo .cab. El formato de un archivo .ddf presenta básicamente el mismo estilo que el archivo .inf, donde se declara un encabezado estándar y, a continuación, se enumera (un archivo por línea) el conjunto de archivos en función de su ubicación en el disco, separados por su ubicación en el archivo .cab.

    ;
    .OPTION EXPLICIT     ; Generate errors 
    .Set CabinetNameTemplate=MySolutionFile.wsp     
    .set DiskDirectoryTemplate=CDROM ; All cabinets go in a single directory
    .Set CompressionType=MSZIP;** All files are compressed in cabinet files
    .Set UniqueFiles="ON"
    .Set Cabinet=on
    .Set DiskDirectory1=Package
    build\manifest.xml manifest.xml
    build\ MySolutionFile \feature.xml MySolutionFile \feature.xml
    ...
    

Vea también

Conceptos

Esquema de solución

Introducción a las soluciones