Alexandre Julliard : include: Added the IInternetProtocolEx interface.
Alexandre Julliard
julliard at winehq.org
Fri Nov 14 07:54:56 CST 2008
Module: wine
Branch: master
Commit: 9ab359314d0b6e44391fb455203f4ff4a0014e18
URL: http://source.winehq.org/git/wine.git/?a=commit;h=9ab359314d0b6e44391fb455203f4ff4a0014e18
Author: Alexandre Julliard <julliard at winehq.org>
Date: Fri Nov 14 12:08:03 2008 +0100
include: Added the IInternetProtocolEx interface.
Based on an old patch by Reece Dunn.
---
include/urlmon.idl | 145 ++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 145 insertions(+), 0 deletions(-)
diff --git a/include/urlmon.idl b/include/urlmon.idl
index 866f9a8..a3dd39a 100644
--- a/include/urlmon.idl
+++ b/include/urlmon.idl
@@ -22,6 +22,10 @@ import "oleidl.idl";
import "servprov.idl";
import "msxml.idl";
+cpp_quote("#ifdef WINE_NO_UNICODE_MACROS")
+cpp_quote("#undef GetUserName")
+cpp_quote("#endif")
+
interface IInternetProtocolSink;
/*****************************************************************************
@@ -1363,6 +1367,147 @@ typedef enum _tagINTERNETFEATURELIST
FEATURE_ENTRY_COUNT
} INTERNETFEATURELIST;
+/*****************************************************************************
+ * IUri interface
+ */
+[
+ local,
+ object,
+ uuid(a39ee748-6a27-4817-a6f2-13914bef5890),
+ pointer_default(unique)
+]
+interface IUri : IUnknown
+{
+ typedef enum
+ {
+ Uri_PROPERTY_ABSOLUTE_URI = 0,
+ Uri_PROPERTY_STRING_START = Uri_PROPERTY_ABSOLUTE_URI,
+ Uri_PROPERTY_AUTHORITY = 1,
+ Uri_PROPERTY_DISPLAY_URI = 2,
+ Uri_PROPERTY_DOMAIN = 3,
+ Uri_PROPERTY_EXTENSION = 4,
+ Uri_PROPERTY_FRAGMENT = 5,
+ Uri_PROPERTY_HOST = 6,
+ Uri_PROPERTY_PASSWORD = 7,
+ Uri_PROPERTY_PATH = 8,
+ Uri_PROPERTY_PATH_AND_QUERY = 9,
+ Uri_PROPERTY_QUERY = 10,
+ Uri_PROPERTY_RAW_URI = 11,
+ Uri_PROPERTY_SCHEME_NAME = 12,
+ Uri_PROPERTY_USER_INFO = 13,
+ Uri_PROPERTY_USER_NAME = 14,
+ Uri_PROPERTY_STRING_LAST = Uri_PROPERTY_USER_NAME,
+ Uri_PROPERTY_HOST_TYPE = 15,
+ Uri_PROPERTY_DWORD_START = Uri_PROPERTY_HOST_TYPE,
+ Uri_PROPERTY_PORT = 16,
+ Uri_PROPERTY_SCHEME = 17,
+ Uri_PROPERTY_ZONE = 18,
+ Uri_PROPERTY_DWORD_LAST = Uri_PROPERTY_ZONE
+ } Uri_PROPERTY;
+
+ HRESULT GetPropertyBSTR(
+ [in] Uri_PROPERTY uriProp,
+ [out] BSTR *pbstrProperty,
+ [in] DWORD dwFlags);
+
+ HRESULT GetPropertyLength(
+ [in] Uri_PROPERTY uriProp,
+ [out] DWORD *pcchProperty,
+ [in] DWORD dwFlags);
+
+ HRESULT GetPropertyDWORD(
+ [in] Uri_PROPERTY uriProp,
+ [out] DWORD *pdwProperty,
+ [in] DWORD dwFlags);
+
+ HRESULT HasProperty(
+ [in] Uri_PROPERTY uriProp,
+ [out] BOOL *pfHasProperty);
+
+ HRESULT GetAbsoluteUri(
+ [out] BSTR *pbstrAbsoluteUri);
+
+ HRESULT GetAuthority(
+ [out] BSTR *pbstrAuthority);
+
+ HRESULT GetDisplayUri(
+ [out] BSTR *pbstrDisplayString);
+
+ HRESULT GetDomain(
+ [out] BSTR *pbstrDomain);
+
+ HRESULT GetExtension(
+ [out] BSTR *pbstrExtension);
+
+ HRESULT GetFragment(
+ [out] BSTR *pbstrFragment);
+
+ HRESULT GetHost(
+ [out] BSTR *pbstrHost);
+
+ HRESULT GetPassword(
+ [out] BSTR *pbstrPassword);
+
+ HRESULT GetPath(
+ [out] BSTR *pbstrPath);
+
+ HRESULT GetPathAndQuery(
+ [out] BSTR *pbstrPathAndQuery);
+
+ HRESULT GetQuery(
+ [out] BSTR *pbstrQuery);
+
+ HRESULT GetRawUri(
+ [out] BSTR *pbstrRawUri);
+
+ HRESULT GetSchemeName(
+ [out] BSTR *pbstrSchemeName);
+
+ HRESULT GetUserInfo(
+ [out] BSTR *pbstrUserInfo);
+
+ HRESULT GetUserName(
+ [out] BSTR *pbstrUserName);
+
+ HRESULT GetHostType(
+ [out] DWORD *pdwHostType);
+
+ HRESULT GetPort(
+ [out] DWORD *pdwPort);
+
+ HRESULT GetScheme(
+ [out] DWORD *pdwScheme);
+
+ HRESULT GetZone(
+ [out] DWORD *pdwZone);
+
+ HRESULT GetProperties(
+ [out] LPDWORD pdwFlags);
+
+ HRESULT IsEqual(
+ [in] IUri *pUri,
+ [out] BOOL *pfEqual);
+}
+
+/*****************************************************************************
+ * IInternetProtocolEx interface
+ */
+[
+ local,
+ object,
+ uuid(c7a98e66-1010-492c-a1c8-c809e1f75905),
+ pointer_default(unique)
+]
+interface IInternetProtocolEx : IInternetProtocol
+{
+ HRESULT StartEx(
+ [in] IUri *pUri,
+ [in] IInternetProtocolSink *pOIProtSink,
+ [in] IInternetBindInfo *pOIBindInfo,
+ [in] DWORD grfPI,
+ [in] HANDLE *dwReserved);
+}
+
cpp_quote("DEFINE_GUID(CLSID_InternetSecurityManager, 0x7b8a2d94, 0x0ac9, 0x11d1, 0x89, 0x6c, 0x00, 0xc0, 0x4f, 0xB6, 0xbf, 0xc4);")
cpp_quote("DEFINE_GUID(CLSID_InternetZoneManager, 0x7B8A2D95, 0x0AC9, 0x11D1, 0x89, 0x6C, 0x00, 0xC0, 0x4F, 0xB6, 0xBF, 0xC4);")
cpp_quote("DEFINE_GUID(IID_IAsyncMoniker, 0x79EAC9D3, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B);")
More information about the wine-cvs
mailing list