Freigeben über


ICcmAlternateDownloadProvider : DownloadContent-Methode

Die ICcmAlternateDownloadProvider::D ownloadContent-Methode in Configuration Manager weist den Anbieter an, Inhalte herunterzuladen.

Syntax

HRESULT DownloadContent(
            LPCWSTR szContentId,
            LPCWSTR szContentVersion,
            LPCWSTR szRemotePath,
            LPCWSTR szLocalPath,
            LPCWSTR szNotifyEndpoint,
            LPCWSTR szNotifyData,
            CCM_DTS_PRIORITY Priority,
            DWORD dwTimeoutSeconds,
            DWORD dwChunkSize,
            DWORD dwFlags,
            LPCWSTR szLocationOptions,
            LPCWSTR szFileManifest,
            LPCWSTR szOwnerSID,
            BOOL bDeleteJobOnError,
            LPCWSTR szProviderData,
            LPCWSTR szPackageData,
            GUID *pJobID
        );

Parameter

szContentId Datentyp: LPCWSTR

Qualifizierer: [in]

Die herunterzuladende Inhalts-/Paket-ID.

szContentVersion Datentyp: LPCWSTR

Qualifizierer: [in]

Die herunterzuladende Inhalts-/Paketversion.

szRemotePath Datentyp: LPCWSTR

Qualifizierer: [in]

Ein Hinweis darauf, wo der Inhalt heruntergeladen werden soll. Der Anbieter kann diesen Parameter ignorieren und mit seinen eigenen Mechanismen herunterladen.

szLocalPath Datentyp: LPCWSTR

Qualifizierer: [in]

Das Verzeichnis, in das der Inhalt heruntergeladen werden soll. Dieses Verzeichnis sollte bei diesem Aufruf bereits vorhanden sein, und der Anbieter sollte aus irgendeinem Grund keine ACLs für das Verzeichnis selbst ändern. Wenn szManifest ist null, sollte dieser Parameter ignoriert werden.

szNotifyEndpoint Datentyp: LPCWSTR

Qualifizierer: [in]

Endpunkt, der zum Benachrichtigen des Inhaltsübertragungs-Managers verwendet werden soll. Dieser Endpunkt sollte wortwörtlich an Aufrufe von SendNotify*ToCTM übergeben werden.

szNotifyData Datentyp: LPCWSTR

Qualifizierer: [in]

Vom Inhaltsübertragungs-Manager angegebene Benachrichtigungsdaten Diese sollten wortwörtlich an Aufrufe von SendNotify*ToCTM übergeben werden.

Priority Datentyp: CCM_DTS_PRIORITY

Qualifizierer: [in]

Die Priorität für den Auftrag. Weitere Informationen finden Sie unter Hinweise zu CCM_DTS_PRIORITY.

dwTimeoutSeconds Datentyp: DWORD

Qualifizierer: [in]

Das Timeout für den Auftrag. Wenn das Timeout erreicht ist, sollte der Auftrag über SendNotifyErrorToCTM einen Fehler melden.

dwChunkSize Datentyp: DWORD

Qualifizierer: [in]

Die Blockgröße, die für Benachrichtigungen verwendet werden soll. Wenn eine Anforderung für Statusbenachrichtigungen vorhanden ist, sollte content Transfer Manager bei jedem dwChunkSize-Byte benachrichtigt werden.

dwFlags Datentyp: DWORD

Qualifizierer: [in]

Flags für den Auftrag. Dieser Parameter entspricht einem OR mit CCM_DTS_FLAG Werten.

szLocationOptions Datentyp: LPCWSTR

Qualifizierer: [in]

Reserviert. Alternative Anbieter sollten diesen Parameter ignorieren.

szFileManifest Datentyp: LPCWSTR

Qualifizierer: [in, eindeutig]

Entweder null oder XML-Daten, die Dateibytebereiche darstellen, die vom Ziel heruntergeladen werden sollen. Weitere Informationen finden Sie unter Hinweise.

szOwnerSID Datentyp: LPCWSTR

Qualifizierer: [in]

Der Benutzerkontext, in dem der Download ausgeführt werden soll.

bDeleteJobOnError Datentyp: BOOL

Qualifizierer: [in]

Gibt an, ob ein Auftrag sofort aufgrund einer vorübergehenden Fehlerbedingung fehlschlagen soll. Wenn dieser Wert false ist, sollten vorübergehende Fehler dazu führen, dass der Anbieter intern erneut versucht, es sei denn, für den Auftrag tritt ein Timeout auf oder wird vom Inhaltsübertragungs-Manager anderweitig angewiesen.

szProviderData Datentyp: LPCWSTR

Qualifizierer: [in]

Die in der CCM_DownloadProvider Richtlinie angegebenen anbieterspezifischen Daten. Dies ist eine leere Zeichenfolge, wenn keine Daten angegeben wurden.

szPackageData Datentyp: LPCWSTR

Qualifizierer: [in]

Die paketspezifischen Daten, die serverseitig angegeben sind, umschlossen in ein <Data> XML-Element. Dies ist eine leere Zeichenfolge, wenn keine Daten angegeben wurden.

*pJobID Datentyp: GUID

Qualifizierer: [out]

Die Auftrags-ID, die bei nachfolgenden Aufrufen als Referenz verwendet werden soll.

Rückgabewerte

Ein HRESULT Code. Mögliche Werte sind u. a. die folgenden:

S_OK Erfolg bedeutet, dass die Ermittlung erfolgreich ausgelöst wurde. Alle anderen Rückgabewerte deuten auf einen Fehler hin.

Hinweise

Ab Version 1702 ist Configuration Manager in Microsoft 365 Klick-und-Los integriert, was inkrementelles Herunterladen unterstützt. Alternative Inhaltsanbieter sollten aktualisiert werden, um Downloadfunktionen für Bytebereiche zu implementieren. Bytebereichsinformationen werden in einem XML-Manifest angegeben, das im szFileManifest-Parameter angegeben ist.

Die Manifest-XML verwendet das folgende Schema:

<?xml version="1.0" encoding="utf-8"?>
<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="DTSManifest">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs="200" minOccurs="1" name="File">
          <xs:complexType>
            <xs:sequence>
              <xs:element maxOccurs="500" minOccurs="0" name="Chunk">
                <xs:complexType>
                  <xs:attribute name="Length" type="xs:unsignedInt" use="required" />
                  <xs:attribute name="Offset" type="xs:unsignedInt" use="required" />
                </xs:complexType>
              </xs:element>
            </xs:sequence>
            <xs:attribute name="Destination" type="xs:string" use="required" />
            <xs:attribute name="Source" type="xs:string" use="required" />
          </xs:complexType>
        </xs:element>
      </xs:sequence>
      <xs:attribute name="Version" type="xs:unsignedByte" use="required" />
    </xs:complexType>
  </xs:element>
</xs:schema>

Das folgende Beispiel zeigt ein Manifest, das drei Dateien herunterlädt:

<?xml version="1.0"?>
<DTSManifest Version="1">
  <File Destination="C:\Prod\stream.dat" Source="Office/Data/6366.2036/stream.dat">
     <Chunk Length="43491" Offset="59247735"/>
     <Chunk Length="267118" Offset="69247735"/>
  </File>
  <File Destination="C:\Prod\s320.cab" Source="Office/Data/6366.2036/320.cab">
     <Chunk Length="512" Offset="50"/>
  </File>
  <File Destination="C:\Prod\s640.cab" Source="Office/Data/16.0.6366.2036/s640.cab"/>
</DTSManifest>

Denken Sie bei der Verarbeitung des Manifests an Folgendes:

  • Es gibt ein oder <file> mehrere Elemente.
  • Wenn ein <file> Element Elemente enthält <chunk> , gibt jedes <chunk> element die Länge und den Byteoffset eines inkrementellen Downloads an.
  • Wenn keine <chunk> Elemente angegeben sind, sollte die gesamte Datei heruntergeladen werden.

Wenn ein alternativer Inhaltsanbieter inkrementelle Downloads nicht unterstützt, verwendet Configuration Manager automatisch Verteilungspunkte zum Herunterladen von Microsoft 365-Inhalten. Für andere Downloadszenarien funktioniert der alternative Inhaltsanbieter jedoch ohne weitere Auswirkungen.

Hinweis

Wenn der Anbieter die Anforderung aus irgendeinem Grund nicht verarbeiten kann, sollte ein Fehler zurückgegeben werden.

Anforderungen

Laufzeitanforderungen

Weitere Informationen finden Sie unter Configuration Manager Anforderungen an die Clientlaufzeit.

Entwicklungsanforderungen

Weitere Informationen finden Sie unter Configuration Manager Cliententwicklungsanforderungen.