Brought to you by the
RFC INDEX PAGE
Google
 


Microsoft Win32 Internet Programmer's Reference


Structures

This list identifies the Win32 Internet function data structures and their uses.

GOPHER_ATTRIBUTE_TYPE

typedef struct {
    DWORD CategoryId
    DWORD AttributeId
    union {
        GOPHER_ADMIN_ATTRIBUTE Admin;
        GOPHER_MOD_DATE_ATTRIBUTE ModDate;
        GOPHER_SCORE_ATTRIBUTE Score;
        GOPHER_SCORE_RANGE_ATTRIBUTE ScoreRange;
        GOPHER_SITE_ATTRIBUTE Site;
        GOPHER_ORGANIZATION_ATTRIBUTE Organization;
        GOPHER_LOCATION_ATTRIBUTE Location;
        GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE GeographicalLocation;
        GOPHER_TIMEZONE_ATTRIBUTE TimeZone;
        GOPHER_PROVIDER_ATTRIBUTE Provider;
        GOPHER_VERSION_ATTRIBUTE Version;
        GOPHER_ABSTRACT_ATTRIBUTE Abstract;
        GOPHER_VIEW_ATTRIBUTE View;
        GOPHER_VERONICA_ATTRIBUTE Veronica;
        GOPHER_ASK_ATTRIBUTE_TYPE Ask;
        GOPHER_UNKNOWN_ATTRIBUTE Unknown;
    } AttributeType;
} GOPHER_ATTRIBUTE_TYPE, *LPGOPHER_ATTRIBUTE_TYPE;

Contains the relevant information of a single Gopher attribute for an object.

CategoryId
Gopher name for the attribute. The possible values include:
GOPHER_CATEGORY_ID_ALL
GOPHER_CATEGORY_ID_INFO
GOPHER_CATEGORY_ID_ADMIN
GOPHER_CATEGORY_ID_VIEWS
GOPHER_CATEGORY_ID_ABSTRACT
GOPHER_CATEGORY_ID_VERONICA
GOPHER_CATEGORY_ID_UNKNOWN
AttributeId
Identifier of the structure contained in theAttributeType member. The possible values include:
GOPHER_ATTRIBUTE_ID_ADMIN
GOPHER_ATTRIBUTE_ID_MOD_DATE
GOPHER_ATTRIBUTE_ID_TTL
GOPHER_ATTRIBUTE_ID_SCORE
GOPHER_ATTRIBUTE_ID_RANGE
GOPHER_ATTRIBUTE_ID_SITE
GOPHER_ATTRIBUTE_ID_ORG
GOPHER_ATTRIBUTE_ID_LOCATION
GOPHER_ATTRIBUTE_ID_GEOG
GOPHER_ATTRIBUTE_ID_TIMEZONE
GOPHER_ATTRIBUTE_ID_PROVIDER
GOPHER_ATTRIBUTE_ID_VERSION
GOPHER_ATTRIBUTE_ID_ABSTRACT
GOPHER_ATTRIBUTE_ID_VIEW
GOPHER_ATTRIBUTE_ID_TREEWALK
GOPHER_ATTRIBUTE_ID_UNKNOWN
AttributeType
Actual setting for the Gopher attribute. The specific value of AttributeType depends on the AttributeId member. The definitions of the various attribute structures is available in Wininet.h.

See also GopherGetAttribute

GOPHER_FIND_DATA

typedef struct {
    TCHAR DisplayString[MAX_GOPHER_DISPLAY_TEXT + 1];
    DWORD GopherType;
    DWORD SizeLow;
    DWORD SizeHigh;
    FILETIME LastModificationTime;
    TCHAR Locator[MAX_GOPHER_LOCATOR_LENGTH + 1];
} GOPHER_FIND_DATA, FAR *LPGOPHER_FIND_DATA;

Contain information retrieved by the GopherFindFirstFile and InternetFindNextFile functions.

DisplayString
String that contains the friendly name of an object. An application can display this string to allow the user to select the object.
GopherType
Mask of flags that describe the item returned.
FileSizeLow
Low 32 bits of the file size.
FileSizeHigh
High 32 bits of the file size.
LastModificationTime
Time when the file was last modified.
Locator
String that identifies the file. An application can pass the locator string to GopherOpenFile or GopherFindFirstFile.

See also GopherFindFirstFile

INTERNET_ASYNC_RESULT


typedef struct {
    DWORD dwResult;
    DWORD dwError;
} INTERNET_ASYNC_RESULT, * LPINTERNET_ASYNC_RESULT;

Contains the result of a call to an asynchronous function. This structure is used with the InternetStatusCallback function.

dwResult
HINTERNET, DWORD, or BOOL return code from an asynchronous function.
dwError
Error code if dwResult indicates that the function failed. If the operation succeeded, this member usually contains ERROR_SUCCESS.

See also InternetStatusCallback

INTERNET_CACHE_ENTRY_INFO


typedef struct _CACHE_ENTRY_INFO {
    DWORD dwStructSize;
    LPSTR lpszSourceUrlName;
    LPTSTR lpszLocalFileName;
    DWORD CacheEntryType;
    DWORD dwUseCount;
    DWORD dwHitRate;
    DWORD dwSizeLow;
    DWORD dwSizeHigh;
    FILETIME LastModifiedTime;
    FILETIME ExpireTime;
    FILETIME LastAccessTime;
    FILETIME LastSyncTime;
    LPBYTE lpHeaderInfo;
    DWORD dwHeaderInfoSize;
    LPTSTR lpszFileExtension;
    DWORD dwReserved;
} INTERNET_CACHE_ENTRY_INFO, *LPINTERNET_CACHE_ENTRY_INFO;

Contains information about an entry in the cache.

dwStructSize
Size, in bytes, of this structure.
lpszSourceUrlName
Address of a string that contains the URL name. The string occupies memory area at the end of this structure.
lpszLocalFileName
Address of a string that contains the local file name. The string occupies memory area at the end of this structure.
CacheEntryType
Cache type bit mask. Can be one of these values:
Value Meaning
NORMAL_CACHE_ENTRY Normal cache entry; may be deleted to recover space for new entries.
STABLE_CACHE_ENTRY Stable cache entry such as graphic and audio/video files; may be deleted to recover space for the new entries only when there is no more NORMAL_CACHE_ENTRY.
STICKY_CACHE_ENTRY Entries that will never be removed automatically by the cache management system.
SPARSE_CACHE_ENTRY This cache entry is incomplete.
OCX_CACHE_ENTRY Special OCX type cache entry.
dwUseCount
Current users count of the cache entry.
dwHitRate
Number of times the cache entry was retrieved
dwSizeLow
Low-order double word of the file size.
dwSizeHigh
High-order double word of the file size.
LastModifiedTime
Last modified time of this URL in GMT format.
ExpireTime
Expiration time of this file in GMT format.
LastAccessTime
Last accessed time in GMT format.
LastSyncTime
Last time the cache was synchronized.
lpHeaderInfo
Address of a buffer that contains the header information. The buffer occupies memory at the end of this structure.
dwHeaderInfoSize
Size of the lpHeaderInfo buffer.
lpszFileExtension
Address of a string that contains the file extension used to retrieve the data as a file. The string occupies memory area at the end of this structure.
dwReserved
Reserved; must be zero.

The MAX_CACHE_ENTRY_INFO_SIZE value defines the maximum size of the INTERNET_CACHE_ENTRY_INFO structure that could be returned by the implementation of the cache functions. Thus passing in a buffer of this size in functions returning INTERNET_CACHE_ENTRY_INFO guarantees that the function does not fail because of an insufficient buffer.

INTERNET_CERTIFICATE_INFO

typedef struct {
    FILETIME ftExpiry;
    FILETIME ftStart;
    LPTSTR lpszSubjectInfo;
    LPTSTR lpszIssuerInfo;
    LPTSTR lpszProtocolName;
    LPTSTR lpszSignatureAlgName;
    LPTSTR lpszEncryptionAlgName;
    DWORD dwKeySize;
} INTERNET_CERTIFICATE_INFO, * LPINTERNET_CERTIFICATE_INFO;

Contains certificate information returned from the server. This structure is used by the InternetQueryOption function.

ftExpiry
FILETIME structure that contains the date the certificate expires.
ftStart
FILETIME structure that contains the date the certificate becomes valid.
lpszSubjectInfo
Address of a buffer that contains the name of the organization, site, and server for which the certificate was issued.
lpszIssuerInfo
Address of a buffer that contains the name of the organization, site, and server that issued the certificate.
lpszProtocolName
Address of a buffer that contains the name of the protocol used to provide the secure connection.
lpszSignatureAlgName
Address of a buffer that contains the name of the algorithm used for signing the certificate.
lpszEncryptionAlgName
Address of a buffer that contains the name of the algorithm used for doing encryption over the secure channel (SSL/PCT) connection.
dwKeySize
Size, in bytes, of the key.

Applications requesting this information must free pointers that are allocated and placed in the returned structure.

See also InternetQueryOption

INTERNET_PREFETCH_STATUS

typedef struct {
    DWORD dwStatus;
    DWORD dwSize;
} INTERNET_PREFETCH_STATUS, * LPINTERNET_PREFETCH_STATUS;

Contains the status of a prefetch download operation.

dwStatus
Status of the download. Can be one of these values:
INTERNET_PREFETCH_PROGRESS The operation is in progress.
INTERNET_PREFETCH_COMPLETE The operation has completed.
INTERNET_PREFETCH_ABORTED The operation was aborted.
dwSize
Size, in bytes, of data downloaded so far.

INTERNET_PROXY_INFO

typedef struct {
    DWORD dwAccessType;
    LPCTSTR lpszProxy;
    LPCTSTR lpszProxyBypass;
} INTERNET_PROXY_INFO, * LPINTERNET_PROXY_INFO;

Contains information that is supplied with the INTERNET_OPTION_PROXY value to get or set proxy information on a handle obtained from a call to the InternetOpen function.

dwAccessType
Access type. Can be one of these values:
Value Meaning
INTERNET_OPEN_TYPE_DIRECT Internet accessed through a direct connection.
INTERNET_OPEN_TYPE_PROXY Internet accessed using a proxy.
INTERNET_OPEN_TYPE_PRECONFIG Applies only when setting proxy information.
lpszProxy
Proxy server list.
lpszProxyBypass
Proxy bypass list.

INTERNET_SCHEME

typedef enum {
    INTERNET_SCHEME_PARTIAL = -2,
    INTERNET_SCHEME_UNKNOWN = -1,
    INTERNET_SCHEME_DEFAULT = 0,
    INTERNET_SCHEME_FTP,
    INTERNET_SCHEME_GOPHER,
    INTERNET_SCHEME_HTTP,
    INTERNET_SCHEME_HTTPS,
    INTERNET_SCHEME_FILE,
    INTERNET_SCHEME_NEWS,
    INTERNET_SCHEME_MAILTO,
    INTERNET_SCHEME_FIRST = INTERNET_SCHEME_FTP,
    INTERNET_SCHEME_LAST = INTERNET_SCHEME_MAILTO
} INTERNET_SCHEME, * LPINTERNET_SCHEME;

Defines the flags used with the nScheme member of the URL_COMPONENTS structure.

INTERNET_VERSION_INFO

typedef struct {
    DWORD dwMajorVersion;
    DWORD dwMinorVersion;
} INTERNET_VERSION_INFO, * LPINTERNET_VERSION_INFO;

Contains the version number of the DLL that contains the Windows Internet functions (Wininet.dll). This structure is used when passing the INTERNET_OPTION_VERSION flag to the InternetQueryOption function.

dwMajorVersion
Major version number.
dwMinorVersion
Minor version number.

URL_COMPONENTS

typedef struct {
    DWORD dwStructSize;
    LPSTR lpszScheme;
    DWORD dwSchemeLength;
    INTERNET_SCHEME nScheme;
    LPSTR lpszHostName;
    DWORD dwHostNameLength;
    INTERNET_PORT nPort;
    LPSTR lpszUserName;
    DWORD dwUserNameLength;
    LPSTR lpszPassword;
    DWORD dwPasswordLength'
    LPSTR lpszUrlPath;
    DWORD dwUrlPathLength;
    LPTSTR lpszExtraInfo;
    DWORD dwExtraInfoLength;
} URL_COMPONENTS;

Contains the constituent parts of a URL. This structure is used with the InternetCrackUrl and InternetCreateUrl functions.

dwStructSize
Size, in bytes, of this structure. Used for version checking.
lpszScheme
Address of a buffer that contains the scheme name.
dwSchemeLength
Length of the scheme name.
nScheme
Enumerated scheme type (if known). For a list of scheme types, see INTERNET_SCHEME.
lpszHostName
Address of a buffer that contains the host name.
dwHostNameLength
Length of the host name.
nPort
Converted port number.
lpszUserName
Address of a buffer that contains the user name.
dwUserNameLength
Length of the user name.
lpszPassword
Address of a buffer that contains the password.
dwPasswordLength
Length of the password.
lpszUrlPath
Address of a buffer that contains the URL path.
dwUrlPathLength
Length of the URL path.
lpszExtraInfo
Address of a buffer that contains the extra information (for example, ?foo or #foo).
dwExtraInfoLength
Length of the extra information.

For InternetCrackUrl, if a pointer member and its corresponding length member are both zero, that component is not returned. If the pointer member is NULL but the length member is not zero, both the pointer and length members are returned. If both pointer and corresponding length members are non-zero, the pointer member points to a buffer where the component is copied. The component may be un-escaped, depending on the dwFlags parameter of InternetCrackUrl.

For InternetCreateUrl, the pointer members should be NULL if the component is not required. If the corresponding length member is zero, the pointer member is the address of a zero-terminated string. If the length member is not zero, it is the string length of the corresponding pointer member

© 1996 Microsoft Corporation