Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
wine
Manage
Activity
Members
Labels
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Package registry
Container Registry
Model registry
Operate
Terraform modules
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Alexey Alyaev
wine
Commits
2f339b25
Commit
2f339b25
authored
20 years ago
by
Patrik Stridvall
Committed by
Alexandre Julliard
20 years ago
Browse files
Options
Downloads
Patches
Plain Diff
Added the IInternetSession interface.
parent
ae9cf771
No related branches found
Branches containing commit
No related tags found
Tags containing commit
No related merge requests found
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
dlls/urlmon/umon.c
+1
-1
1 addition, 1 deletion
dlls/urlmon/umon.c
include/urlmon.h
+219
-1
219 additions, 1 deletion
include/urlmon.h
include/urlmon.idl
+56
-1
56 additions, 1 deletion
include/urlmon.idl
with
276 additions
and
3 deletions
dlls/urlmon/umon.c
+
1
−
1
View file @
2f339b25
...
...
@@ -1030,7 +1030,7 @@ HRESULT WINAPI CreateURLMoniker(IMoniker *pmkContext, LPCWSTR szURL, IMoniker **
* Failure: E_INVALIDARG, if any argument is invalid, or
* E_OUTOFMEMORY if memory allocation fails.
*/
HRESULT
WINAPI
CoInternetGetSession
(
DWORD
dwSessionMode
,
/*
IInternetSession
*/
void
**
ppIInternetSession
,
DWORD
dwReserved
)
HRESULT
WINAPI
CoInternetGetSession
(
DWORD
dwSessionMode
,
IInternetSession
**
ppIInternetSession
,
DWORD
dwReserved
)
{
FIXME
(
"(%ld, %p, %ld): stub
\n
"
,
dwSessionMode
,
ppIInternetSession
,
dwReserved
);
...
...
This diff is collapsed.
Click to expand it.
include/urlmon.h
+
219
−
1
View file @
2f339b25
...
...
@@ -1359,6 +1359,224 @@ void __RPC_STUB IInternetProtocolInfo_QueryInfo_Stub(
#endif
/* __IInternetProtocolInfo_INTERFACE_DEFINED__ */
#ifndef __IInternetSession_FWD_DEFINED__
#define __IInternetSession_FWD_DEFINED__
typedef
struct
IInternetSession
IInternetSession
;
#endif
typedef
IInternetSession
*
LPIINTERNETSESSION
;
typedef
enum
_tagOIBDG_FLAGS
{
OIBDG_APARTMENTTHREADED
=
0x100
,
OIBDG_DATAONLY
=
0x1000
}
OIBDG_FLAGS
;
/*****************************************************************************
* IInternetSession interface
*/
#ifndef __IInternetSession_INTERFACE_DEFINED__
#define __IInternetSession_INTERFACE_DEFINED__
DEFINE_GUID
(
IID_IInternetSession
,
0x79eac9e7
,
0xbaf9
,
0x11ce
,
0x8c
,
0x82
,
0x00
,
0xaa
,
0x00
,
0x4b
,
0xa9
,
0x0b
);
#if defined(__cplusplus) && !defined(CINTERFACE)
struct
IInternetSession
:
public
IUnknown
{
virtual
HRESULT
STDMETHODCALLTYPE
RegisterNameSpace
(
IClassFactory
*
pCF
,
REFCLSID
rclsid
,
LPCWSTR
pwzProtocol
,
ULONG
cPatterns
,
const
LPCWSTR
*
ppwzPatterns
,
DWORD
dwReserved
)
=
0
;
virtual
HRESULT
STDMETHODCALLTYPE
UnregisterNameSpace
(
IClassFactory
*
pCF
,
LPCWSTR
pszProtocol
)
=
0
;
virtual
HRESULT
STDMETHODCALLTYPE
RegisterMimeFilter
(
IClassFactory
*
pCF
,
REFCLSID
rclsid
,
LPCWSTR
pwzType
)
=
0
;
virtual
HRESULT
STDMETHODCALLTYPE
UnregisterMimeFilter
(
IClassFactory
*
pCF
,
LPCWSTR
pwzType
)
=
0
;
virtual
HRESULT
STDMETHODCALLTYPE
CreateBinding
(
LPBC
pBC
,
LPCWSTR
szUrl
,
IUnknown
*
pUnkOuter
,
IUnknown
**
ppUnk
,
void
**
ppOInetProt
,
DWORD
dwOption
)
=
0
;
virtual
HRESULT
STDMETHODCALLTYPE
SetSessionOption
(
DWORD
dwOption
,
LPVOID
pBuffer
,
DWORD
dwBufferLength
,
DWORD
dwReserved
)
=
0
;
};
#else
typedef
struct
IInternetSessionVtbl
IInternetSessionVtbl
;
struct
IInternetSession
{
const
IInternetSessionVtbl
*
lpVtbl
;
};
struct
IInternetSessionVtbl
{
ICOM_MSVTABLE_COMPAT_FIELDS
/*** IUnknown methods ***/
HRESULT
(
STDMETHODCALLTYPE
*
QueryInterface
)(
IInternetSession
*
This
,
REFIID
riid
,
void
**
ppvObject
);
ULONG
(
STDMETHODCALLTYPE
*
AddRef
)(
IInternetSession
*
This
);
ULONG
(
STDMETHODCALLTYPE
*
Release
)(
IInternetSession
*
This
);
/*** IInternetSession methods ***/
HRESULT
(
STDMETHODCALLTYPE
*
RegisterNameSpace
)(
IInternetSession
*
This
,
IClassFactory
*
pCF
,
REFCLSID
rclsid
,
LPCWSTR
pwzProtocol
,
ULONG
cPatterns
,
const
LPCWSTR
*
ppwzPatterns
,
DWORD
dwReserved
);
HRESULT
(
STDMETHODCALLTYPE
*
UnregisterNameSpace
)(
IInternetSession
*
This
,
IClassFactory
*
pCF
,
LPCWSTR
pszProtocol
);
HRESULT
(
STDMETHODCALLTYPE
*
RegisterMimeFilter
)(
IInternetSession
*
This
,
IClassFactory
*
pCF
,
REFCLSID
rclsid
,
LPCWSTR
pwzType
);
HRESULT
(
STDMETHODCALLTYPE
*
UnregisterMimeFilter
)(
IInternetSession
*
This
,
IClassFactory
*
pCF
,
LPCWSTR
pwzType
);
HRESULT
(
STDMETHODCALLTYPE
*
CreateBinding
)(
IInternetSession
*
This
,
LPBC
pBC
,
LPCWSTR
szUrl
,
IUnknown
*
pUnkOuter
,
IUnknown
**
ppUnk
,
void
**
ppOInetProt
,
DWORD
dwOption
);
HRESULT
(
STDMETHODCALLTYPE
*
SetSessionOption
)(
IInternetSession
*
This
,
DWORD
dwOption
,
LPVOID
pBuffer
,
DWORD
dwBufferLength
,
DWORD
dwReserved
);
};
/*** IUnknown methods ***/
#define IInternetSession_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IInternetSession_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IInternetSession_Release(p) (p)->lpVtbl->Release(p)
/*** IInternetSession methods ***/
#define IInternetSession_RegisterNameSpace(p,a,b,c,d,e,f) (p)->lpVtbl->RegisterNameSpace(p,a,b,c,d,e,f)
#define IInternetSession_UnregisterNameSpace(p,a,b) (p)->lpVtbl->UnregisterNameSpace(p,a,b)
#define IInternetSession_RegisterMimeFilter(p,a,b,c) (p)->lpVtbl->RegisterMimeFilter(p,a,b,c)
#define IInternetSession_UnregisterMimeFilter(p,a,b) (p)->lpVtbl->UnregisterMimeFilter(p,a,b)
#define IInternetSession_CreateBinding(p,a,b,c,d,e,f) (p)->lpVtbl->CreateBinding(p,a,b,c,d,e,f)
#define IInternetSession_SetSessionOption(p,a,b,c,d) (p)->lpVtbl->SetSessionOption(p,a,b,c,d)
#endif
#define IInternetSession_METHODS \
ICOM_MSVTABLE_COMPAT_FIELDS \
/*** IUnknown methods ***/
\
STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
STDMETHOD_(ULONG,Release)(THIS) PURE; \
/*** IInternetSession methods ***/
\
STDMETHOD_(HRESULT,RegisterNameSpace)(THIS_ IClassFactory* pCF, REFCLSID rclsid, LPCWSTR pwzProtocol, ULONG cPatterns, const LPCWSTR* ppwzPatterns, DWORD dwReserved) PURE; \
STDMETHOD_(HRESULT,UnregisterNameSpace)(THIS_ IClassFactory* pCF, LPCWSTR pszProtocol) PURE; \
STDMETHOD_(HRESULT,RegisterMimeFilter)(THIS_ IClassFactory* pCF, REFCLSID rclsid, LPCWSTR pwzType) PURE; \
STDMETHOD_(HRESULT,UnregisterMimeFilter)(THIS_ IClassFactory* pCF, LPCWSTR pwzType) PURE; \
STDMETHOD_(HRESULT,CreateBinding)(THIS_ LPBC pBC, LPCWSTR szUrl, IUnknown* pUnkOuter, IUnknown** ppUnk, void** ppOInetProt, DWORD dwOption) PURE; \
STDMETHOD_(HRESULT,SetSessionOption)(THIS_ DWORD dwOption, LPVOID pBuffer, DWORD dwBufferLength, DWORD dwReserved) PURE;
HRESULT
CALLBACK
IInternetSession_RegisterNameSpace_Proxy
(
IInternetSession
*
This
,
IClassFactory
*
pCF
,
REFCLSID
rclsid
,
LPCWSTR
pwzProtocol
,
ULONG
cPatterns
,
const
LPCWSTR
*
ppwzPatterns
,
DWORD
dwReserved
);
void
__RPC_STUB
IInternetSession_RegisterNameSpace_Stub
(
struct
IRpcStubBuffer
*
This
,
struct
IRpcChannelBuffer
*
pRpcChannelBuffer
,
PRPC_MESSAGE
pRpcMessage
,
DWORD
*
pdwStubPhase
);
HRESULT
CALLBACK
IInternetSession_UnregisterNameSpace_Proxy
(
IInternetSession
*
This
,
IClassFactory
*
pCF
,
LPCWSTR
pszProtocol
);
void
__RPC_STUB
IInternetSession_UnregisterNameSpace_Stub
(
struct
IRpcStubBuffer
*
This
,
struct
IRpcChannelBuffer
*
pRpcChannelBuffer
,
PRPC_MESSAGE
pRpcMessage
,
DWORD
*
pdwStubPhase
);
HRESULT
CALLBACK
IInternetSession_RegisterMimeFilter_Proxy
(
IInternetSession
*
This
,
IClassFactory
*
pCF
,
REFCLSID
rclsid
,
LPCWSTR
pwzType
);
void
__RPC_STUB
IInternetSession_RegisterMimeFilter_Stub
(
struct
IRpcStubBuffer
*
This
,
struct
IRpcChannelBuffer
*
pRpcChannelBuffer
,
PRPC_MESSAGE
pRpcMessage
,
DWORD
*
pdwStubPhase
);
HRESULT
CALLBACK
IInternetSession_UnregisterMimeFilter_Proxy
(
IInternetSession
*
This
,
IClassFactory
*
pCF
,
LPCWSTR
pwzType
);
void
__RPC_STUB
IInternetSession_UnregisterMimeFilter_Stub
(
struct
IRpcStubBuffer
*
This
,
struct
IRpcChannelBuffer
*
pRpcChannelBuffer
,
PRPC_MESSAGE
pRpcMessage
,
DWORD
*
pdwStubPhase
);
HRESULT
CALLBACK
IInternetSession_CreateBinding_Proxy
(
IInternetSession
*
This
,
LPBC
pBC
,
LPCWSTR
szUrl
,
IUnknown
*
pUnkOuter
,
IUnknown
**
ppUnk
,
void
**
ppOInetProt
,
DWORD
dwOption
);
void
__RPC_STUB
IInternetSession_CreateBinding_Stub
(
struct
IRpcStubBuffer
*
This
,
struct
IRpcChannelBuffer
*
pRpcChannelBuffer
,
PRPC_MESSAGE
pRpcMessage
,
DWORD
*
pdwStubPhase
);
HRESULT
CALLBACK
IInternetSession_SetSessionOption_Proxy
(
IInternetSession
*
This
,
DWORD
dwOption
,
LPVOID
pBuffer
,
DWORD
dwBufferLength
,
DWORD
dwReserved
);
void
__RPC_STUB
IInternetSession_SetSessionOption_Stub
(
struct
IRpcStubBuffer
*
This
,
struct
IRpcChannelBuffer
*
pRpcChannelBuffer
,
PRPC_MESSAGE
pRpcMessage
,
DWORD
*
pdwStubPhase
);
#endif
/* __IInternetSession_INTERFACE_DEFINED__ */
DEFINE_GUID
(
IID_IAsyncMoniker
,
0x79EAC9D3
,
0xBAF9
,
0x11CE
,
0x8C
,
0x82
,
0x00
,
0xAA
,
0x00
,
0x4B
,
0xA9
,
0x0B
);
DEFINE_GUID
(
CLSID_StdURLMoniker
,
0x79EAC9E0
,
0xBAF9
,
0x11CE
,
0x8C
,
0x82
,
0x00
,
0xAA
,
0x00
,
0x4B
,
0xA9
,
0x0B
);
#define MK_S_ASYNCHRONOUS 0x000401E8
...
...
@@ -1389,7 +1607,7 @@ HRESULT WINAPI RegisterBindStatusCallback(IBindCtx *pbc, IBindStatusCallback *pb
HRESULT
WINAPI
CompareSecurityIds
(
BYTE
*
,
DWORD
,
BYTE
*
,
DWORD
,
DWORD
);
HRESULT
WINAPI
URLDownloadToFileA
(
LPUNKNOWN
pCaller
,
LPCSTR
szURL
,
LPCSTR
szFileName
,
DWORD
dwReserved
,
LPBINDSTATUSCALLBACK
lpfnCB
);
HRESULT
WINAPI
URLDownloadToFileW
(
LPUNKNOWN
pCaller
,
LPCWSTR
szURL
,
LPCWSTR
szFileName
,
DWORD
dwReserved
,
LPBINDSTATUSCALLBACK
lpfnCB
);
HRESULT
WINAPI
CoInternetGetSession
(
DWORD
,
/*
IInternetSession*
/
void
*
*
,
DWORD
);
HRESULT
WINAPI
CoInternetGetSession
(
DWORD
,
IInternetSession
**
,
DWORD
);
HRESULT
WINAPI
MkParseDisplayNameEx
(
IBindCtx
*
,
LPCWSTR
,
ULONG
*
,
IMoniker
**
);
HRESULT
WINAPI
IsAsyncMoniker
(
IMoniker
*
pmk
);
HRESULT
WINAPI
CreateAsyncBindCtx
(
DWORD
,
IBindStatusCallback
*
,
IEnumFORMATETC
*
,
IBindCtx
**
);
...
...
This diff is collapsed.
Click to expand it.
include/urlmon.idl
+
56
−
1
View file @
2f339b25
...
...
@@ -508,6 +508,61 @@ interface IInternetProtocolInfo : IUnknown
[
in
]
DWORD
dwReserved
)
;
}
/*****************************************************************************
*
IInternetSession
interface
*/
[
local
,
object
,
uuid
(
79
eac9e7
-
baf9
-
11
ce
-
8
c82
-
00
aa004ba90b
),
pointer_default
(
unique
)
]
interface
IInternetSession
:
IUnknown
{
typedef
[
unique
]
IInternetSession
*
LPIINTERNETSESSION
;
typedef
enum
_tagOIBDG_FLAGS
{
OIBDG_APARTMENTTHREADED
=
0
x0100
,
OIBDG_DATAONLY
=
0
x1000
}
OIBDG_FLAGS
;
HRESULT
RegisterNameSpace
(
[
in
]
IClassFactory
*
pCF
,
[
in
]
REFCLSID
rclsid
,
[
in
]
LPCWSTR
pwzProtocol
,
[
in
]
ULONG
cPatterns
,
[
in
]
const
LPCWSTR
*
ppwzPatterns
,
[
in
]
DWORD
dwReserved
)
;
HRESULT
UnregisterNameSpace
(
[
in
]
IClassFactory
*
pCF
,
[
in
]
LPCWSTR
pszProtocol
)
;
HRESULT
RegisterMimeFilter
(
[
in
]
IClassFactory
*
pCF
,
[
in
]
REFCLSID
rclsid
,
[
in
]
LPCWSTR
pwzType
)
;
HRESULT
UnregisterMimeFilter
(
[
in
]
IClassFactory
*
pCF
,
[
in
]
LPCWSTR
pwzType
)
;
HRESULT
CreateBinding
(
[
in
]
LPBC
pBC
,
[
in
]
LPCWSTR
szUrl
,
[
in
]
IUnknown
*
pUnkOuter
,
[
out
,
unique
]
IUnknown
**
ppUnk
,
[
out
,
unique
]
/*
IInternetProtocol
*/
void
**
ppOInetProt
,
[
in
]
DWORD
dwOption
)
;
HRESULT
SetSessionOption
(
[
in
]
DWORD
dwOption
,
[
in
]
LPVOID
pBuffer
,
[
in
]
DWORD
dwBufferLength
,
[
in
]
DWORD
dwReserved
)
;
}
cpp_quote
(
"DEFINE_GUID(IID_IAsyncMoniker, 0x79EAC9D3, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B);"
)
cpp_quote
(
"DEFINE_GUID(CLSID_StdURLMoniker, 0x79EAC9E0, 0xBAF9, 0x11CE, 0x8C, 0x82, 0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B);"
)
...
...
@@ -541,7 +596,7 @@ cpp_quote("HRESULT WINAPI RegisterBindStatusCallback(IBindCtx *pbc, IBindStatusC
cpp_quote
(
"HRESULT WINAPI CompareSecurityIds(BYTE*,DWORD,BYTE*,DWORD,DWORD);"
)
cpp_quote
(
"HRESULT WINAPI URLDownloadToFileA(LPUNKNOWN pCaller, LPCSTR szURL, LPCSTR szFileName, DWORD dwReserved, LPBINDSTATUSCALLBACK lpfnCB);"
)
cpp_quote
(
"HRESULT WINAPI URLDownloadToFileW(LPUNKNOWN pCaller, LPCWSTR szURL, LPCWSTR szFileName, DWORD dwReserved, LPBINDSTATUSCALLBACK lpfnCB);"
)
cpp_quote
(
"HRESULT WINAPI CoInternetGetSession(DWORD,
/*
IInternetSession*
/void*
*,DWORD);"
)
cpp_quote
(
"HRESULT WINAPI CoInternetGetSession(DWORD,IInternetSession**,DWORD);"
)
cpp_quote
(
"HRESULT WINAPI MkParseDisplayNameEx(IBindCtx*,LPCWSTR,ULONG*,IMoniker**);"
)
cpp_quote
(
"HRESULT WINAPI IsAsyncMoniker(IMoniker* pmk);"
)
cpp_quote
(
"HRESULT WINAPI CreateAsyncBindCtx(DWORD, IBindStatusCallback*, IEnumFORMATETC*, IBindCtx**);"
)
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment