windows-nt/Source/XPSP1/NT/ds/adsi/nwnds/cprovcf.cxx
2020-09-26 16:20:57 +08:00

69 lines
1.3 KiB
C++

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