Partager via


CFtpConnection::OpenFile

Appelez la fonction membre pour ouvrir un fichier situé sur un serveur FTP pour lire ou écrire.

CInternetFile* OpenFile(
   LPCTSTR pstrFileName,
   DWORD dwAccess = GENERIC_READ,
   DWORD dwFlags = FTP_TRANSFER_TYPE_BINARY,
   DWORD_PTR dwContext = 1 
);

Paramètres

  • pstrFileName
    Un pointeur vers une chaîne contenant le nom du fichier à ouvrir.

  • dwAccess
    Détermine comment le fichier sera accessible.Peuvent être GENERIC_READ ou GENERIC_WRITE, mais pas les deux.

  • dwFlags
    Spécifie les conditions dans lesquelles les transferts suivants se produisent.Cela peut être l'un des constantes de FTP_TRANSFER_* :

    • FTP_TRANSFER_TYPE_ASCII les transferts de fichiers à l'aide de FTP ASCII (type méthode de transfert d'Un).Convertit contrôle et les informations de mise en forme aux équivalents locaux.

    • FTP_TRANSFER_TYPE_BINARY les données de transferts de fichiers à l'aide de l'image de le protocole FTP (type méthode de transfert d'I).Les données de transferts de fichiers exactement comme il existe, sans les modifications.c'est la méthode de transfert par défaut.

  • dwContext
    l'identificateur de contexte pour ouvrir le fichier.Consultez Notes pour plus d'informations sur dwContext.

Valeur de retour

Un pointeur vers un objet de CInternetFile .

Notes

OpenFile doit être utilisé dans les situations suivantes :

  • Une application a les données qui doivent être envoyées et créées en tant que fichier sur le serveur FTP, mais que les données ne sont pas dans un fichier local.Une fois qu' OpenFile ouvrir un fichier, l'application utilise CInternetFile::Write pour envoyer les données du fichier FTP sur le serveur.

  • Une application doit extraire un fichier de serveur et le définir en mémoire contrôlée par l'application, au lieu d'écrire sur le disque.l'application utilise CInternetFile::Read après utilisation d' OpenFile pour ouvrir le fichier.

  • Une application a besoin d'un niveau de contrôle fin sur un transfert de fichiers.Par exemple, l'application peut afficher un contrôle de progression indique la progression du mode de migration de fichiers en téléchargeant un fichier.

Après avoir appelé OpenFile et jusqu'à appeler CInternetConnection::Close, l'application peut uniquement appeler CInternetFile::Read, CInternetFile::Write, CInternetConnection::Close, ou CFtpFileFind::FindFile.Les appels à d'autres fonctions de FTP pour la même session FTP échouent et placeront code d'erreur à FTP_ETRANSFER_IN_PROGRESS.

Le paramètre d' pstrFileName peut être un nom de fichier partiellement qualifié relatif au répertoire actif ou qualifié complet.Une barre oblique inverse (\) ou une barre oblique (/) peut être utilisée comme séparateur de répertoire pour l'un ou l'autre de nom.OpenFile traduit les séparateurs de nom de dossier aux caractères appropriés avant de l'utiliser.

Remplacez la valeur par défaut d' dwContext pour définir l'ID de contexte à une valeur de votre choix.L'identificateur de contexte est associé à cette opération spécifique de l'objet d' CFtpConnection créé par son objet de CInternetSession .La valeur est retournée à CInternetSession::OnStatusCallback pour fournir le rapport état de l'exécution avec laquelle il est identifié.Consultez l'article Premières étapes Internet : WinInet pour plus d'informations sur l'identificateur de contexte.

Configuration requise

Header: afxinet.h

Voir aussi

Référence

Classe de CFtpConnection

Graphique de la hiérarchie

Classe de CInternetConnection

CFtpConnection::GetFile

CGopherConnection::OpenFile

CInternetFile::Write

CInternetFile::Read