73 lines
1.4 KiB
C++
73 lines
1.4 KiB
C++
|
//---------------------------------------------------------------------------
|
||
|
//
|
||
|
// Microsoft Windows
|
||
|
// Copyright (C) Microsoft Corporation, 1992 - 1995
|
||
|
//
|
||
|
// File: cprovcf.cxx
|
||
|
//
|
||
|
// Contents: Windows NT 3.5 Provider Object Class Factory Code
|
||
|
//
|
||
|
// CWinNTProviderCF::CreateInstance
|
||
|
//
|
||
|
// History: 01-30-95 krishnag Created.
|
||
|
//
|
||
|
//----------------------------------------------------------------------------
|
||
|
#include "winnt.hxx"
|
||
|
#pragma hdrstop
|
||
|
|
||
|
|
||
|
//+---------------------------------------------------------------------------
|
||
|
//
|
||
|
// Function: CWinNTProviderCF::CreateInstance
|
||
|
//
|
||
|
// Synopsis:
|
||
|
//
|
||
|
// Arguments: [pUnkOuter]
|
||
|
// [iid]
|
||
|
// [ppv]
|
||
|
//
|
||
|
// Returns: HRESULT
|
||
|
//
|
||
|
// Modifies:
|
||
|
//
|
||
|
// History: 01-30-95 krishnag Created.
|
||
|
//----------------------------------------------------------------------------
|
||
|
STDMETHODIMP
|
||
|
CWinNTProviderCF::CreateInstance(
|
||
|
IUnknown * pUnkOuter,
|
||
|
REFIID iid,
|
||
|
LPVOID * ppv
|
||
|
)
|
||
|
{
|
||
|
HRESULT hr;
|
||
|
CWinNTProvider * pProvider;
|
||
|
|
||
|
if (pUnkOuter)
|
||
|
RRETURN(E_FAIL);
|
||
|
|
||
|
|
||
|
hr = CWinNTProvider::Create(&pProvider);
|
||
|
|
||
|
if (FAILED(hr)) {
|
||
|
RRETURN (hr);
|
||
|
}
|
||
|
|
||
|
if (pProvider)
|
||
|
{
|
||
|
hr = pProvider->QueryInterface(iid, ppv);
|
||
|
pProvider->Release();
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
*ppv = NULL;
|
||
|
RRETURN(E_OUTOFMEMORY);
|
||
|
}
|
||
|
|
||
|
RRETURN(hr);
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|