|
INT SetDirectoryFormat( |
|
INT nFormatId |
|
); |
The SetDirectoryFormat method is used to specify the format
used by the server when returning a list of files. The format type is
used internally by the library when parsing the file list returned by
the server.
Parameters
- nFormatId
- An identifier used to specify the format of the file list
returned by the server. The following values are recognized:
Value |
Description |
FTP_DIRECTORY_AUTO |
This value specifies that the library should automatically
determine the format of the file lists returned by the server.
It is recommended that most applications use this value and
allow the library to automatically determine the appropriate
file listing format used by the server. |
FTP_DIRECTORY_UNIX |
This value specifies that the server returns file lists in
the format commonly used by UNIX servers. Note that many
servers can be configured to return file listings in this
format, even if they are not actually a UNIX based platform.
Consult the technical reference documentation for your server
for more information. |
FTP_DIRECTORY_MSDOS |
This value specifies that the server returns file lists in
the format commonly used by MS-DOS based systems. This includes
Windows IIS servers. Long file names will be returned if
supported by the underlying filesystem, such as NTFS or
FAT32. |
FTP_DIRECTORY_VMS |
This value specifies that the server returns file lists in
the format commonly used by VMS servers. Note that VMS servers
can be configured to return a standard UNIX style listing in
additional to the default VMS format. |
FTP_DIRECTORY_STERLING_1 |
This value specifies that the server returns file listings in
a proprietary format used by the Sterling server, which is used
for EDI (Electronic Data Interchange) applications. This format
uses a 13 byte status code. |
FTP_DIRECTORY_STERLING_2 |
This value specifies that the server returns file listings in
a proprietary format used by the Sterling server, which is used
for EDI (Electronic Data Interchange) applications. This format
uses a 10 byte status code. |
FTP_DIRECTORY_NETWARE |
This value specifies that the server returns file listings
in a proprietary format used by NetWare servers. The format is
similar to UNIX style listings except that file access and
permissions are indicated by letter codes enclosed in brackets.
This is the default format selected if the server identifies
itself as a NetWare system. |
FTP_DIRECTORY_MLSD |
This value specifies that the server should return file
listings in a machine-independent format as defined by RFC 3659.
This format specifies file information as a sequence of
name/value pairs, with the same format being used regardless of
the operating system that the server is hosted on. Note that not
all servers support this format, and some proxy servers may
reject the command even if the remote server supports its use. |
Return Value
If the method succeeds, the return value identifies the file list
format used by the server. If the method fails, the return value is
FTP_ERROR. To get extended error information, call
GetLastError.
Remarks
This method should only be used when the library cannot
automatically determine the directory format returned by the server.
To determine the format used by a server after a file list has been
retrieved, use the GetDirectoryFormat method.
The default directory format is determined both by the server's
operating system and by analyzing the format of the data returned by
the server. If the library is unable to automatically determine the
format, it will attempt to parse the list of files as though it is a
UNIX style listing.
If the FTP_DIRECTORY_MLSD format is specified, the file
information returned by the server may differ from the default
output of the LIST command. For example, on a UNIX based FTP server,
the output of the LIST command is typically the same format that is
used by the /bin/ls command, where file names are sorted and hidden
files are not listed. However, the MLSD command may return an
unsorted list of files that includes hidden files and directories.
Requirements
Minimum Desktop Platform: Windows 7 Service Pack 1
Minimum Server Platform: Windows Server 2008 R2 Service Pack 1
Header File: cstools11.h
Import Library: csftpv11.lib
Unicode: Implemented as Unicode and ANSI versions
See Also
CloseDirectory,
GetDirectoryFormat,
GetFileStatus,
GetFirstFile,
GetNextFile,
OpenDirectory
|
|