Installere pakker ved hjælp af Dynamics CRM Package Deployer og Windows PowerShell

 

Udgivet: februar 2017

Gælder for: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

Bemærk

Oplysningerne her er til versioner af Dynamics 365, der er tidligere end Dynamics 365 (online), version 9.0. Du kan finde den nyeste dokumentation i Installere pakker ved hjælp af Dynamics CRM Package Deployer og Windows PowerShell.

Microsoft Dynamics CRM Package Deployer gør det muligt for administratorer at udrulle pakker på en forekomst af Dynamics 365 (i det lokale miljø) eller Microsoft Dynamics 365 (online). En "pakke" kan bestå af en eller flere af følgende:

  • En eller flere Dynamics 365-løsningsfiler.

  • Flade filer eller eksporterede datafiler fra Værktøj til konfigurationsoverførsel. Du kan finde oplysninger om Værktøj til konfigurationsoverførsel i Administrere konfigurationsdata.

  • Brugerdefineret kode, der kan køre, mens eller efter at pakken er installeret på Microsoft Dynamics 365.

  • HTML-indhold er specifik for pakken, der kan vises i begyndelsen og slutningen af pakkeinstallationsprocessen. Dette kan være nyttigt for at give en beskrivelse af de løsninger og filer, der installeres i pakken.

Udviklere opretter pakker ved hjælp af pakkeinstallationsskabelonen i Microsoft Visual Studio.Flere oplysninger:MSDN: Oprette pakker til CRM Package Deployer

Når en pakke er blevet oprettet, kan du installere den enten ved at køre CRM-pakkeimplementationsværktøj eller ved hjælp af Windows PowerShell-cmdletterne til værktøjet.

Vigtigt

Før du importerer og kører en pakke i en produktionsorganisation, skal du teste pakken på et ikke-produktionsspejlbillede af produktionsorganisationen.

Sikkerhedskopier altid produktionsorganisationen, før du installerer en pakke.

Dette emne indeholder

Installation af pakker ved hjælp af Pakkeimplementationsværktøj

Bruge Windows PowerShell til at installere pakker

Foretag fejlfinding af problemer med installation af pakken ved hjælp af logfiler

Bedste praksis for installation af pakker

Installation af pakker ved hjælp af Pakkeimplementationsværktøj

Du kan bruge Pakkeimplementationsværktøj (packagedeployer.exe) til at installere pakker på følgende måder.

Brug Pakkeimplementationsværktøj til at installere pakker

Brug Pakkeimplementationsværktøj på kommandolinjen

Brug Pakkeimplementationsværktøj til at installere pakker

Pakkeimplementationsværktøj kan kun afvikle én pakke ad gangen. Men den giver brugerne mulighed for at vælge en pakke til at installere fra flere pakker, der er tilgængelige i biblioteket Pakkeimplementationsværktøj. Nogle af skærmbillederne og handlingerne i værktøjet varierer efter pakkedefinitionen. Du behøver ikke installere Pakkeimplementationsværktøj. Bare hent og kør den.

  1. Hente den pakke, der skal installeres. En pakke er en samling af filer og mapper, der oprettes i Visual Studio-projektmappen (<Projekt>\Bin\Debug), når du opbygger et pakkeprojekt i Visual Studio. Kopiér det følgende fra dit projekts debugmappe:

    • Mappen <PackageName>: Denne mappe indeholder løsningerne, importkonfigurationen og indholdet i din pakke.

    • <PackageName>.dll: Assemblyet indeholder koden til pakken. Som standard er er navnet på assemblyen det samme som dit Visual Studio-projektnavn.

    Yderligere oplysninger om oprettelse af en pakke ved hjælp af Visual Studio findes i MSDN: Oprette en pakke til værktøjet Package Deployer.

    Lad os i dette emneantage, at alt indhold fra pakkemappen og assemblyen fra Visual Studio-projektets debugmappe (<Projekt>\Bin\Debug\Bin\Debug) kopieres til mappen c:\DeployPackage.

  2. Download Microsoft Dynamics CRM SDK. Kør derefter den hentede eksekverbare fil for at pakke indholdet af pakken ud.

  3. Gå til mappen SDK\Tools\PackageDeployer, og kopier pakkemappen og assemblyet fra mappen c:\DeployPackage til mappen SDK\Tools\PackageDeployer.

  4. Når filerne er kopieret, skal du køre værktøjet ved at dobbeltklikke på filen PackageDeployer.exe i mappen SDK\Tools\PackageDeployer.

  5. Klik på Fortsæt på hovedskærmbilledet i værktøjet.

  6. På skærmbilledet Opret forbindelse til Microsoft Dynamics 365 skal du angive oplysninger om godkendelse til at oprette forbindelse til din Dynamics 365-server, hvor du vil installere pakken. Hvis du har flere organisationer og du vil vælge den organisation, hvor du vil installere pakken, skal du markere afkrydsningsfeltet Vis altid en liste over tilgængelige organisationer. Klik på Login.

  7. Hvis du har flere organisationer på din Dynamics 365-server, skal du vælge en Dynamics 365-organisation, du vil oprette forbindelse til.

  8. Vælg pakken, der installeres, og klik på næste.

    Select your package in the Package Deployer Tool

  9. Følg vejledningen på de efterfølgende skærmbilleder for at fuldføre installationen af pakken.

    Skærmen vises på baggrund af definitionen af den pakke, du valgte til installation. Oplysninger om en komplet pakkeudrulning, som anvender Pakkeimplementationsværktøj, findes i emnet for udrulning af Unified Service Desk-pakker: Udrul Unified Service Desk-eksempelprogrammer til CRM Server ved hjælp af Package Deployer

Brug Pakkeimplementationsværktøj på kommandolinjen

Systemadministratorer og systemtilpassere kan overføre parametre, som f.eks. en regional sprogkode til packagedeployer.exe fra kommandolinjen. Disse parametre kan kun konfigureres ved at køre Pakkeimplementationsværktøj på kommandolinjen.

Bemærk

Denne funktion blev først introduceret i Opdatering 0.1 til Microsoft Dynamics CRM Online 2016.

Denne tabel indeholder de tilgængelige parametre.

Parameter

Beskrivelse

Standardværdi

RuntimePackageSettings

Får packagedeployer.exe til at acceptere kommandolinjeparametre som f.eks. LCID og SkipChecks.

Ikke tilgængelig

LCID=localeID

Angiver landestandard-id'et som 1033 for Engelsk-USA eller 1036 for Fransk-Frankrig fra de tilgængelige lokale id'er i pakken. Hvis det ikke er angivet, bruges standardsproget.

Brug standardsproget

SkipChecks=true/false

Brug kun denne parameter, når destinationsmiljøet ikke indeholder andre løsninger eller tilpasninger. Når indstillingen er angivet til sand, omgår løsningsimporten nogle sikkerhedskontroller, hvilket kan forbedre importens ydeevne.

Falsk

Følgende eksempel instruerer CRM-pakkeimplementationsværktøj i at omgå nogle sikkerhedskontroller og indstiller det sprog, der skal importeres, til polsk.

packagedeployer.exe /Settings:"SkipChecks=true|lcid=1045"

Bemærk

Brug et pipe-tegn | til at adskille parametre, når du kører packagedeployer.exe på kommandolinjen med flere parametre.

Få flere oplysninger om de parametre og værdier, der kan overføres til packagedeployer.exe, under MSDN: Oprette pakker til CRM Package Deployer.

Bruge Windows PowerShell til at installere pakker

Pakkeimplementationsværktøj har også Windows PowerShell-understøttelse til installation af pakker.

Udfør følgende trin for at bruge PowerShell-cmdletterne til at installere pakker:

Forudsætninger

Registrere cmdletterne

Brug cmdletten til at hente pakker

Bruge cmdletten til at oprette forbindelse til Dynamics 365-forekomsten

Brug cmdletten til at installere pakker

Få detaljeret hjælp til cmdletter

Forudsætninger

Her er forudsætningerne for at bruge PowerShell-cmdlets:

  • Der kræves PowerShell 3.0 eller nyere for at installere en pakke ved hjælp af PowerShell. Kontrollér din PowerShell-version ved at køre et PowerShell-vindue og derefter køre følgende kommando: $Host

  • Angiv, at udførelsespolitikken skal køre de signerede PowerShell-scripts. Det gøres ved at køre et PowerShell-vindue som administrator og derefter køre kommandoen: Set-ExecutionPolicy -ExecutionPolicy AllSigned

Registrere cmdletterne

Du skal registrere Windows PowerShell-cmdletterne for Pakkeimplementationsværktøj, før du kan bruge den. Sådan registreres cmdletterne:

  1. Hvis du ikke allerede har gjort det, kan du hente Dynamics 365 SDK-pakken fra Microsoft Download Center og køre pakkefilen for at pakke indholdet af pakken ud. Lad os antage, at du har pakket pakken ud i mappen c:\CRM på din computer.Pakkeimplementationsværktøj og de øvrige nødvendige filer bliver tilgængelige på følgende placering: c:\CRM\SDK\Tools\PackageDeployer.

  2. Start Windows PowerShell på computeren med administratorrettigheder (kør som administrator).

  3. Ved prompten i Windows PowerShell-vinduet skal du ændre mappen til mappen Windows PowerShell under mappen PackageDeployer. I dette tilfælde:

    cd c:\CRM\SDK\Tools\PackageDeployer\PowerShell
    
  4. Kør scriptet RegisterXRMTooling.ps1 for at registrere Package Deployer for Windows PowerShell (dll), og installer Windows PowerShell-snap-in'en for Pakkeimplementationsværktøj. Gør det ved at skrive følgende kommando og trykke på ENTER:

    .\RegisterXRMTooling.ps1
    
  5. Tilføj Windows PowerShell-snap-in'en for XRM-værktøjet. Dermed registreres følgende cmdletter: Get-CrmConnection og Get-CrmOrganizations.

    Add-PSSnapin Microsoft.Xrm.Tooling.Connector
    
  6. Tilføj Windows PowerShell-snap-in'en for Package Deployer. Dermed registreres følgende cmdletter: Get-CrmPackages og Import-CrmPackage.

    Add-PSSnapin Microsoft.Xrm.Tooling.PackageDeployment
    

Du er nu klar til at bruge disse Windows PowerShell-cmdletter. Kør følgende kommando ved prompten i Windows PowerShell-vinduet for at få vist de cmdletter, du har registreret:

Get-Help “Crm”

Brug cmdletten til at hente pakker

Før du kan bruge cmdletten, skal du sikre, at du har kopieret pakken til mappen PackageDeployer (i dette tilfælde c:\CRM\SDK\Tools\PackageDeployer). En pakke er en samling af filer og mapper, der oprettes i Visual Studio-projektmappen (<projekt>\Bin\Debug), når du opbygger et projekt i Visual Studio. Kopiér hele indholdet af projekts debugmappe til mappen PackageDeployer. Yderligere oplysninger om oprettelse af en pakke ved hjælp af Visual Studio findes i MSDN: Oprette pakker til CRM Package Deployer.

  1. I PowerShell-vinduet skal du bruge følgende cmdlet til at returnere en liste over pakker, der kan importeres i den angivne mappe (i dette tilfælde c:\CRM\SDK\Tools\PackageDeployer):

    Get-CrmPackages –PackageDirectory c:\CRM\SDK\Tools\PackageDeployer
    
  2. Hvis du vil have oplysninger om en pakke i en mappe, kan du bruge cmdletten Get-CrmPackages sammen med den parameteren –PackageName til at angive navnet på assemblyen i den mappe, der indeholder pakkedefinitionen.

    Get-CrmPackages –PackageDirectory c:\CRM\SDK\Tools\PackageDeployer –PackageName SampleCRMPackage.dll
    
  3. Pakkeassemblyens placering kan gemmes i en variabel ved hjælp af Get-CrmPackages-cmdletten. Derefter kan den genbruges i Import-CrmPackage-cmdletten for at angive en værdi for parameteren PackageDirectory. Du kan f.eks. gemme oplysningerne for en eller flere pakker, der returneres fra Get-CrmPackages-cmdletten i en variabel, der kaldes $MyPackages.

    $MyPackages = Get-CrmPackages –PackageDirectory c:\CRM\SDK\Tools\PackageDeployer 
    

    For at få vist alle pakker.

    $MyPackages
    

    For at få vist den tredje pakke.

    $MyPackages[2].PackageAssemblyLocation
    

    Du kan derefter henvise til hver pakke i matrixen mellem 0 og n. Foreksempel importerer denne cmdlet den første pakke, der findes i $MyPackages.

    Import-CrmPackage -CrmConnection $CRMConn -PackageDirectory $MyPackages[0].PackageAssemblyLocation
    

    Bemærk

    Parameteren PackageAssemblyLocation og muligheden for at få vist mappeplaceringen og navnet på en pakke blev først introduceret i December 2016 – opdatering til Dynamics 365 (online og det lokale miljø).Flere oplysninger:Dynamics 365 SDK

Bruge cmdletten til at oprette forbindelse til Dynamics 365-forekomsten

  1. Angiv dine legitimationsoplysninger for at oprette forbindelse til din Microsoft Dynamics 365 (online)- eller Dynamics 365 (i det lokale miljø)-forekomst. Når du kører følgende kommando, bliver du bedt om at skrive dit brugernavn og din adgangskode for at oprette forbindelse til Dynamics 365-forekomsten, og vi gemmer den i variablen $Cred og bruger den senere til at oprette forbindelse til Dynamics 365-serveren.

    $Cred = Get-Credential
    
  2. Brug følgende kommando til at få forbindelse til din Microsoft Dynamics 365 (online)- eller Dynamics 365 (i det lokale miljø)-forekomst. Vi gemmer forbindelsesoplysningerne i variablen $CRMConn:

    • Hvis du opretter forbindelse til Dynamics 365 (i det lokale miljø)-forekomsten:

      $CRMConn = Get-CrmConnection -ServerUrl http://<your_CRM_Server> -OrganizationName <your_Org_Name> -Credential $Cred
      
    • Hvis du opretter forbindelse til Microsoft Dynamics 365 (online)-serveren:

      $CRMConn = Get-CrmConnection -DeploymentRegion NorthAmerica –OnlineType Office365 –OrganizationName <your_Org_Name> -Credential $Cred
      

      Bemærk

      For DeploymentRegion-parameteren er gyldige værdier: NorthAmerica, EMEA, APACSouthAmerica, Oceania, JPN og NorthAmerica2. For OnlineType-parameteren er gyldige værdier Office365 og LiveID.

  3. Dine angivne legitimationsoplysninger valideres, når du kører kommandoen i trin 2.

Brug cmdletten til at installere pakker

Brug derefter Dynamics 365-forbindelsesoplysningerne, der er gemt i variablen $CRMConn-variablen til at insallere pakker til Dynamics 365-forekomsten. Følgende kommando installerer en pakke, opdeler pakken i mappen c:\UnpackedFiles og registrerer oplysninger i en fil i mappen c:\MyLogFiles.

Import-CrmPackage –CrmConnection $CRMConn –PackageDirectory c:\CRM\SDK\Tools\PackageDeployer –PackageName SampleCRMPackage.dll –UnpackFilesDirectory c:\UnpackedFiles -LogWriteDirectory C:\MyLogFiles -Verbose

Bemærk

  • CrmConnection, PackageDirectory og PackageName er obligatoriske parametre.

  • I stedet for at angive pakken manuelt kan du bruge en variabel sammen med parameteren PackageDirectory.Flere oplysninger:Brug cmdletten til at hente pakker

  • For PackageName-parametrene skal du angive navnet på den assembly, der indeholder pakkedefinitionen.

  • Du behøver ikke at angive parameteren UnpackFilesDirectory, hvis pakken ikke pakker filerne ud under installation af pakken. Når du definerer en pakke i Visual Studio, angiver du, om filer skal pakkes ud ved hjælp af parameteren agentdesktopzipfile i filen ImportConfig.xml.Flere oplysninger:MSDN: Oprette pakker til CRM Package Deployer

  • Parameteren Verbose er valgfri og bruges til at få vist en detaljeret logfil over de aktiviteter, der udføres under installationen af pakken.

  • Den valgfri RuntimePackageSettings-parameter kan bruges sammen med følgende parametre:

    • LCID=localeID-parameteren landestandard-id'et som 1033 for Engelsk-USA eller 1036 for Fransk-Frankrig fra de tilgængelige lokale id'er i pakken. Hvis det ikke er angivet, bruges standardsproget.

    • &#160;

      SkipChecks=true/false-parameteren bør kun bruges, når destinationsmiljøet ikke indeholder andre løsninger eller tilpasninger. Når indstillingen er angivet til sand, omgår løsningsimporten nogle sikkerhedskontroller, hvilket kan forbedre importydeevnen.

  • Den mappe, du angiver, at når du bruger LogWriteDirectory-parameteren, skal allerede findes, og den bruger, der kører cmdletten Import-CrmPackage, skal have skriverettigheder til mappen. Derudover er -Verbose-parameteren nødvendig, når du bruger parameteren LogWriteDirectory.

    Parameteren LogWriteDirectory blev introduceret i December 2016 – opdatering til Dynamics 365 (online og det lokale miljø).Flere oplysninger:Dynamics 365 SDK

Følgende eksempelkommando importerer en pakke med navnet SampleCRMPackage og angiver Engelsk-USA (1033) som sproget til at importere pakken.

Import-CrmPackage –CrmConnection $CRMConn –PackageDirectory c:\CRM\SDK\Tools\PackageDeployer –PackageName SampleCRMPackage.dll –UnpackFilesDirectory c:\UnpackedFiles –RuntimePackageSettings LCID=1033

Få detaljeret hjælp til cmdletter

I vinduet PowerShell skal du bruge Get-Help-cmdletten med et cmdlet-navn til at få vist detaljeret hjælp for cmdletten. Gør følgende f.eks. for at få detaljeret hjælp til Import-CrmPackage-cmdletten:

Get-Help Import-CrmPackage -full

Du kan se onlinehjælpen til cmdletterne i CRM PowerShell Reference.

Foretag fejlfinding af problemer med installation af pakken ved hjælp af logfiler

Pakkeimplementationsværktøj understøtter logføring for at få detaljerede oplysninger om fejl, der kan opstå, når en person logger på Microsoft Dynamics 365-forekomsten ved hjælp af værktøjet og installerer pakker. Værktøjet genererer som standard tre logfiler, der er tilgængelige på følgende placering på computeren, hvor du kører værktøjet: C:\Brugere\<brugernavn>\AppData\Roaming\Microsoft\Microsoft Dynamics CRM Package Deployer\<version>. Hvis du vil angive en anden mappe, skal du bruge parameteren -LogWriteDirectory til PowerShell-cmdletten.Flere oplysninger:Brug cmdletten til at hente pakker

  • Login_ErrorLog.log: Indeholder oplysninger om de problemer, der opstod, da du brugte værktøjet til at logge på Dynamics 365-forekomsten. Hvis der er problemer under logon, vises der en meddelelse på værktøjets logonskærmen med et hyperlink til denne logfil. Meddelelsen angiver, at der opstod en fejl under behandlingen af logonanmodningen, og at brugeren kan få vist fejlloggen. Du kan klikke på hyperlinket i meddelelsen for at få vist denne logfil. Logfilen oprettes, første gang du har logonproblemer i værktøjet. Logfilen bruges derefter til at logge oplysninger om et logonproblem, når det opstår.

  • PackageDeployer.log: Indeholder detaljerede oplysninger om hver opgave, der udføres i værktøjet under udrulning af pakkerne. Du kan få vist logfilen fra værktøjet ved at klikke på hyperlinket Vis logfil i bunden af skærmen.

  • ComplexImportDetail.log: Indeholder detaljerede oplysninger om de data, der er importeret i den seneste udrulning ved hjælp af værktøjet. Hver gang du installerer en pakke ved hjælp af dette værktøj, flyttes de eksisterende oplysninger fra logfilen til en fil med navnet ComplexImportDetail._old.log i den samme mappe, og filen ComplexImportDetail.log angiver oplysninger om den seneste import, der er udført ved hjælp af værktøjet.

Bedste praksis for installation af pakker

Under installation af pakker skal Dynamics 365-administratorer:

  • Insistere på i en signeret pakkeassembly, så de kan spore en assembly tilbage til kilden.

  • Teste pakken på en forproduktionsforekomst (helst et spejlbillede af produktionsforekomsten), før du kører den på en produktionsserver.

  • Sikkerhedskopiere produktionsforekomsten, før der installeres en pakke.

Se også

MSDN: Oprette pakker til CRM Package Deployer
Administration af Dynamics 365

© 2017 Microsoft. Alle rettigheder forbeholdes. Ophavsret