Partager via


FILE_REMOTE_PROTOCOL_INFO structure (winbase.h)

Contient des informations sur le protocole distant de fichier. Cette structure est retournée par la fonction GetFileInformationByHandleEx lorsque FileRemoteProtocolInfo est passé dans le paramètre FileInformationClass .

Syntaxe

typedef struct _FILE_REMOTE_PROTOCOL_INFO {
  USHORT StructureVersion;
  USHORT StructureSize;
  ULONG  Protocol;
  USHORT ProtocolMajorVersion;
  USHORT ProtocolMinorVersion;
  USHORT ProtocolRevision;
  USHORT Reserved;
  ULONG  Flags;
  struct {
    ULONG Reserved[8];
  } GenericReserved;
  struct {
    ULONG Reserved[16];
  } ProtocolSpecificReserved;
  union {
    struct {
      struct {
        ULONG Capabilities;
      } Server;
      struct {
        ULONG Capabilities;
        ULONG ShareFlags;
        ULONG CachingFlags;
      } Share;
    } Smb2;
    ULONG Reserved[16];
  } ProtocolSpecific;
} FILE_REMOTE_PROTOCOL_INFO, *PFILE_REMOTE_PROTOCOL_INFO;

Membres

StructureVersion

Version de cette structure. Ce membre doit être défini sur 2 si la communication est entre les ordinateurs exécutant Windows 8, Windows Server 2012 ou version ultérieure et 1 dans le cas contraire.

StructureSize

Taille de cette structure. Ce membre doit être défini sur sizeof(FILE_REMOTE_PROTOCOL_INFO).

Protocol

Protocole distant (WNNC_NET_*) défini dans Wnnc.h ou Ntifs.h.

WNNC_NET_MSNET (0x00010000)

WNNC_NET_SMB (0x00020000)

WNNC_NET_LANMAN (0x00020000)

WNNC_NET_NETWARE (0x00030000)

WNNC_NET_VINES (0x00040000)

WNNC_NET_10NET (0x00050000)

WNNC_NET_LOCUS (0x00060000)

WNNC_NET_SUN_PC_NFS (0x00070000)

WNNC_NET_LANSTEP (0x00080000)

WNNC_NET_9TILES (0x00090000)

WNNC_NET_LANTASTIC (0x000A0000)

WNNC_NET_AS400 (0x000B0000)

WNNC_NET_FTP_NFS (0x000C0000)

WNNC_NET_PATHWORKS (0x000D0000)

WNNC_NET_LIFENET (0x000E0000)

WNNC_NET_POWERLAN (0x000F0000)

WNNC_NET_BWNFS (0x00100000)

WNNC_NET_COGENT (0x00110000)

WNNC_NET_FARALLON (0x00120000)

WNNC_NET_APPLETALK (0x00130000)

WNNC_NET_INTERGRAPH (0x00140000)

WNNC_NET_SYMFONET (0x00150000)

WNNC_NET_CLEARCASE (0x00160000)

WNNC_NET_FRONTIER (0x00170000)

WNNC_NET_BMC (0x00180000)

WNNC_NET_DCE (0x00190000)

WNNC_NET_AVID (0x001A0000)

WNNC_NET_DOCUSPACE (0x001B0000)

WNNC_NET_MANGOSOFT (0x001C0000)

WNNC_NET_SERNET (0x001D0000)

WNNC_NET_RIVERFRONT1 (0x001E0000)

WNNC_NET_RIVERFRONT2 (0x001F0000)

WNNC_NET_DECORB (0x00200000)

WNNC_NET_PROTSTOR (0x00210000)

WNNC_NET_FJ_REDIR (0x00220000)

WNNC_NET_DISTINCT (0x00230000)

WNNC_NET_TWINS (0x00240000)

WNNC_NET_RDR2SAMPLE (0x00250000)

WNNC_NET_CSC (0x00260000)

WNNC_NET_3IN1 (0x00270000)

WNNC_NET_EXTENDNET (0x00290000)

WNNC_NET_STAC (0x002A0000)

WNNC_NET_FOXBAT (0x002B0000)

WNNC_NET_YAHOO (0x002C0000)

WNNC_NET_EXIFS (0x002D0000)

WNNC_NET_DAV (0x002E0000)

WNNC_NET_KNOWARE (0x002F0000)

WNNC_NET_OBJECT_DIRE (0x00300000)

WNNC_NET_MASFAX (0x00310000)

WNNC_NET_HOB_NFS (0x00320000)

WNNC_NET_SHIVA (0x00330000)

WNNC_NET_IBMAL (0x00340000)

WNNC_NET_LOCK (0x00350000)

WNNC_NET_TERMSRV (0x00360000)

WNNC_NET_SRT (0x00370000)

WNNC_NET_QUINCY (0x00380000)

WNNC_NET_OPENAFS (0x00390000)

WNNC_NET_AVID1 (0x003A0000)

WNNC_NET_DFS (0x003B0000)

WNNC_NET_KWNP (0x003C0000)

WNNC_NET_ZENWORKS (0x003D0000)

WNNC_NET_DRIVEONWEB (0x003E0000)

WNNC_NET_VMWARE (0x003F0000)

WNNC_NET_RSFX (0x00400000)

WNNC_NET_MFILES (0x00410000)

WNNC_NET_MS_NFS (0x00420000)

WNNC_NET_GOOGLE (0x00430000)

WNNC_NET_NDFS (0x00440000)

ProtocolMajorVersion

Version principale du protocole distant.

ProtocolMinorVersion

Version mineure du protocole distant.

ProtocolRevision

Révision du protocole distant.

Reserved

Doit être défini sur zéro (0). N’utilisez pas ce membre.

Flags

Informations sur le protocole distant. Ce membre peut être défini sur zéro ou plusieurs des indicateurs suivants.

Valeur Signification
REMOTE_PROTOCOL_FLAG_LOOPBACK
0x1
Le protocole distant utilise un bouclage.
REMOTE_PROTOCOL_FLAG_OFFLINE
0x2
Le protocole distant utilise un cache hors connexion.
REMOTE_PROTOCOL_INFO_FLAG_PERSISTENT_HANDLE
0x4
Le protocole distant utilise un handle persistant.

Windows 7 et Windows Server 2008 R2 : Cet indicateur n’est pas pris en charge avant Windows 8 et Windows Server 2012.

REMOTE_PROTOCOL_INFO_FLAG_PRIVACY
0x8
Le protocole distant utilise la confidentialité. Cela est pris en charge uniquement si le membre StructureVersion est égal ou supérieur à 2.

Windows 7 et Windows Server 2008 R2 : Cet indicateur n’est pas pris en charge avant Windows 8 et Windows Server 2012.

REMOTE_PROTOCOL_INFO_FLAG_INTEGRITY
0x10
Le protocole distant utilise l’intégrité pour que les données soient signées. Cela est pris en charge uniquement si le membre StructureVersion est égal ou supérieur à 2.

Windows 7 et Windows Server 2008 R2 : Cet indicateur n’est pas pris en charge avant Windows 8 et Windows Server 2012.

REMOTE_PROTOCOL_INFO_FLAG_MUTUAL_AUTH
0x20
Le protocole distant utilise l’authentification mutuelle à l’aide de Kerberos. Cela est pris en charge uniquement si le membre StructureVersion est égal ou supérieur à 2.

Windows 7 et Windows Server 2008 R2 : Cet indicateur n’est pas pris en charge avant Windows 8 et Windows Server 2012.

GenericReserved

Structure d’informations génériques de protocole.

GenericReserved.Reserved[8]

Doit être défini sur zéro (0). N’utilisez pas ce membre.

ProtocolSpecificReserved

Structure d’informations spécifiques au protocole.

ProtocolSpecificReserved.Reserved[16]

Doit être défini sur zéro (0). N’utilisez pas ce membre.

ProtocolSpecific

ProtocolSpecific.Smb2

ProtocolSpecific.Smb2.Server

ProtocolSpecific.Smb2.Server.Capabilities

ProtocolSpecific.Smb2.Share

ProtocolSpecific.Smb2.Share.Capabilities

ProtocolSpecific.Smb2.Share.ShareFlags

ProtocolSpecific.Smb2.Share.CachingFlags

ProtocolSpecific.Reserved[16]

Remarques

La structure FILE_REMOTE_PROTOCOL_INFO est valide uniquement pour une utilisation avec la fonction GetFileInformationByHandleEx .

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 7 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 R2 [applications de bureau uniquement]
En-tête winbase.h (inclure Windows.h)

Voir aussi

FILE_INFO_BY_HANDLE_CLASS

GetFileInformationByHandleEx