Création d'une solution

Un package de solution est un fichier CAB (.cab) avec une extension de nom de fichier et un fichier manifeste. Il peut contenir les composants suivants :

  • Définitions de site

  • Définitions des fonctionnalités avec leurs définitions d'élément correspondant et fichiers

  • Fichiers WebPart (*.webpart, *.dwp)

  • Fichiers de modèle et fichiers racine, qui peuvent inclure :

    • Fichiers _layouts

    • Ressources (*.resx)

    • Fichiers de ressources (par exemple, *.doc ou *.xls)

  • Assemblys, qui peuvent inclure :

    • Des entrées de contrôle sécurisées

    • Des ressources

  • Des stratégies de sécurité d'accès

Les fichiers de solution ont une structure hiérarchique (un fichier manifeste est à la racine), tandis que les répertoires de définitions de fonctionnalités, de ressources ou de sites sont contenus dans des sous-répertoires. Les définitions de fonctionnalités quant à elles, définissent l'emplacement où les fichiers associés se trouvent dans la solution.

Le créateur de solution peut définir la structure restante ; toutefois, il est recommandé de placer les fichiers de la définition d'une fonctionnalité ou d'un site en particulier dans le sous-répertoire de la définition de cette fonctionnalité ou de ce site.

RemarqueRemarque :

La structure de répertoires à l'intérieur du fichier .wsp détermine la structure de répertoires finale sur le système de fichiers du serveur Web frontal.

Pour créer un package de solution, procédez comme suit :

  1. Créez un fichier manifest.xml. de solution

    Le fichier manifeste de solution (toujours appelé manifest.xml) est stocké à la racine d'un fichier de solution. Ce fichier définit la liste des fonctionnalités, des définitions de site, des fichiers de ressources, des fichiers de composant WebPart et des assemblys à traiter. Il ne définit pas la structure de fichiers ; si les fichiers sont inclus dans une solution mais non répertoriés dans le fichier manifeste XML, ils ne sont pas traités.

    La structure montrée ci-dessous est la structure d'un fichier 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>
    

    En outre, vous pouvez ajouter un élément DwpFiles pour spécifier les fichiers .webpart ou .dwp, ou un élément ResourceFiles pour spécifier les fichiers de ressources, les définitions de site, les ressources d'application et les stratégies de sécurité d'accès au code.

  2. Facultatif. Annotez vos fichiers feature.xml avec les balises <ElementFile>.

    Dans la balise <ElementManifests> de votre fichier feature.xml, ajoutez la balise <ElementFile Location="..."/> pour tous les fichiers supplémentaires dans votre fonctionnalité, tels que les pages .aspx (par exemple, allItems.aspx) ou les pages maîtres, etc.

    RemarqueRemarque :

    Cette étape est requise uniquement si votre solution contient des fonctionnalités.

  3. Créez votre package de solution (le fichier .wsp).

    Étant donné que le fichier de solution est essentiellement un fichier .cab, utilisez l'outil makecab.exe pour créer le package de solution. Cet outil prend un pointeur vers un fichier .ddf, qui décrit la structure du fichier .cab. Le format d'un fichier .ddf est pratiquement du même style que le fichier .inf ; vous déclarez un en-tête standard, puis vous énumérez, un fichier par ligne, le jeu des fichiers en fonction de leur emplacement sur le disque, séparés en fonction de leur emplacement dans le fichier .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
    ...
    

Voir aussi

Autres ressources

Schéma de solution
Vue d'ensemble des solutions