PI_FLAGS enumeration
Contains the flags that control the asynchronous pluggable protocol handler.
Syntax
typedef enum _tagPI_FLAGS {
PI_PARSE_URL = 0x00000001,
PI_FILTER_MODE = 0x00000002,
PI_FORCE_ASYNC = 0x00000004,
PI_USE_WORKERTHREAD = 0x00000008,
PI_MIMEVERIFICATION = 0x00000010,
PI_CLSIDLOOKUP = 0x00000020,
PI_DATAPROGRESS = 0x00000040,
PI_SYNCHRONOUS = 0x00000080,
PI_APARTMENTTHREADED = 0x00000100,
PI_CLASSINSTALL = 0x00000200,
PI_PASSONBINDCTX = 0x00002000,
PI_NOMIMEHANDLER = 0x00008000,
PI_LOADAPPDIRECT = 0x00004000,
PD_FORCE_SWITCH = 0x00010000,
PI_PREFERDEFAULTHANDLER = 0x00020000
} PI_FLAGS;
Constants
PI_PARSE_URL
Asynchronous pluggable protocol should parse the URL and return S_OK if the URL is syntactically correct; otherwise S_FALSE.PI_FILTER_MODE
Asynchronous pluggable protocol handler should be running in filter mode and data will come in through the IInternetProtocolSink interface it exposes. The QueryInterface method will be called on the protocol handler for its IInternetProtocolSink interface.PI_FORCE_ASYNC
Asynchronous pluggable protocol handler should do as little work as possible on the apartment (or user interface) thread and continue on a worker thread as soon as possible.PI_USE_WORKERTHREAD
Asynchronous pluggable protocol handler should use worker threads and not use the apartment thread.PI_MIMEVERIFICATION
Asynchronous pluggable protocol handler should verify and report the MIME type.PI_CLSIDLOOKUP
Asynchronous pluggable protocol handler should find the CLSID associated with the MIME type.PI_DATAPROGRESS
Asynchronous pluggable protocol handler should report its progress.PI_SYNCHRONOUS
Asynchronous pluggable protocol handler should work synchronously.PI_APARTMENTTHREADED
Asynchronous pluggable protocol handler should use the apartment (or user interface) thread only.PI_CLASSINSTALL
Asynchronous pluggable protocol handler should install the class if the class is not found.PI_PASSONBINDCTX
Asynchronous pluggable protocol handler should pass address of the IBindCtx interface to the pUnk member of the PROTOCOLFILTERDATA structure.PI_NOMIMEHANDLER
Asynchronous pluggable protocol handler should disable MIME filters.PI_LOADAPPDIRECT
Asynchronous pluggable protocol handler should load the application directly.PD_FORCE_SWITCH
Asynchronous pluggable protocol handler should switch to the apartment thread, even if it does not need to.PI_PREFERDEFAULTHANDLER
Asynchronous pluggable protocol handler should choose the default handler over a custom handler.
Requirements
Minimum supported client |
Windows XP |
Minimum supported server |
Windows 2000 Server |
Header |
Urlmon.h |
IDL |
Urlmon.idl |