Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

65 lines
1.2 KiB

/*++
Copyright (c) Microsoft Corporation
Module Name:
pendingassembly.cpp
Abstract:
Sources for the CPendingAssembly class
Author:
Michael J. Grier (MGrier) 23-Feb-2000
Revision History:
xiaoyuw 09/2000 replace attributes with assembly identity
--*/
#include "stdinc.h"
#include "pendingassembly.h"
CPendingAssembly::CPendingAssembly() :
m_SourceAssembly(NULL),
m_Identity(NULL),
m_Optional(false),
m_MetadataSatellite(false)
{
}
CPendingAssembly::~CPendingAssembly()
{
if (m_Identity != NULL)
{
::SxsDestroyAssemblyIdentity(m_Identity);
m_Identity = NULL;
}
}
BOOL
CPendingAssembly::Initialize(
PASSEMBLY Assembly,
PCASSEMBLY_IDENTITY Identity,
bool Optional,
bool MetadataSatellite
)
{
BOOL fSuccess = FALSE;
FN_TRACE_WIN32(fSuccess);
INTERNAL_ERROR_CHECK(m_Identity == NULL);
PARAMETER_CHECK(Identity != NULL);
IFW32FALSE_EXIT(::SxsDuplicateAssemblyIdentity(0, Identity, &m_Identity));
m_SourceAssembly = Assembly;
m_Optional = Optional;
m_MetadataSatellite = MetadataSatellite;
fSuccess = TRUE;
Exit:
return fSuccess;
}