inetcomm: Add an implementation of IVirtualStream.
This commit is contained in:
parent
066a8f442d
commit
55b086b24e
|
@ -139,6 +139,7 @@ static cf mime_body_cf = { &cf_vtbl, MimeBody_create };
|
|||
static cf mime_allocator_cf = { &cf_vtbl, MimeAllocator_create };
|
||||
static cf mime_message_cf = { &cf_vtbl, MimeMessage_create };
|
||||
static cf mime_security_cf = { &cf_vtbl, MimeSecurity_create };
|
||||
static cf virtual_stream_cf = { &cf_vtbl, VirtualStream_create };
|
||||
|
||||
/***********************************************************************
|
||||
* DllGetClassObject (INETCOMM.@)
|
||||
|
@ -177,6 +178,10 @@ HRESULT WINAPI DllGetClassObject(REFCLSID rclsid, REFIID iid, LPVOID *ppv)
|
|||
{
|
||||
cf = (IClassFactory*) &mime_allocator_cf.lpVtbl;
|
||||
}
|
||||
else if( IsEqualCLSID( rclsid, &CLSID_IVirtualStream ))
|
||||
{
|
||||
cf = (IClassFactory*) &virtual_stream_cf.lpVtbl;
|
||||
}
|
||||
|
||||
if ( !cf )
|
||||
{
|
||||
|
|
|
@ -77,6 +77,7 @@ HRESULT MimeBody_create(IUnknown *outer, void **obj);
|
|||
HRESULT MimeAllocator_create(IUnknown *outer, void **obj);
|
||||
HRESULT MimeMessage_create(IUnknown *outer, void **obj);
|
||||
HRESULT MimeSecurity_create(IUnknown *outer, void **obj);
|
||||
HRESULT VirtualStream_create(IUnknown *outer, void **obj);
|
||||
|
||||
HRESULT MimeInternational_Construct(IMimeInternational **internat);
|
||||
|
||||
|
|
|
@ -2989,3 +2989,13 @@ HRESULT WINAPI MimeOleGetAllocator(IMimeAllocator **alloc)
|
|||
{
|
||||
return MimeAllocator_create(NULL, (void**)alloc);
|
||||
}
|
||||
|
||||
HRESULT VirtualStream_create(IUnknown *outer, void **obj)
|
||||
{
|
||||
FIXME("(%p, %p)\n", outer, obj);
|
||||
|
||||
*obj = NULL;
|
||||
if (outer) return CLASS_E_NOAGGREGATION;
|
||||
|
||||
return MimeOleCreateVirtualStream((IStream **)obj);
|
||||
}
|
||||
|
|
|
@ -464,6 +464,12 @@ static struct regsvr_coclass const coclass_list[] = {
|
|||
"inetcomm.dll",
|
||||
"Both"
|
||||
},
|
||||
{ &CLSID_IVirtualStream,
|
||||
"CLSID_IVirtualStream",
|
||||
NULL,
|
||||
"inetcomm.dll",
|
||||
"Both"
|
||||
},
|
||||
{ NULL } /* list terminator */
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in New Issue