85 lines
2 KiB
C++
85 lines
2 KiB
C++
|
#include "privcpp.h"
|
||
|
|
||
|
CPackage_IRunnableObject::CPackage_IRunnableObject(CPackage *pPackage) :
|
||
|
_pPackage(pPackage)
|
||
|
{
|
||
|
ASSERT(_cRef == 0);
|
||
|
}
|
||
|
|
||
|
CPackage_IRunnableObject::~CPackage_IRunnableObject()
|
||
|
{
|
||
|
DebugMsg(DM_TRACE,"CPackage_IRunnableObject destroyed with ref count %d",_cRef);
|
||
|
}
|
||
|
|
||
|
|
||
|
//////////////////////////////////
|
||
|
//
|
||
|
// IUnknown Methods...
|
||
|
//
|
||
|
HRESULT CPackage_IRunnableObject::QueryInterface(REFIID iid, void ** ppv)
|
||
|
{
|
||
|
return _pPackage->QueryInterface(iid,ppv);
|
||
|
}
|
||
|
|
||
|
ULONG CPackage_IRunnableObject::AddRef(void)
|
||
|
{
|
||
|
_cRef++; // interface ref count for debugging
|
||
|
return _pPackage->AddRef();
|
||
|
}
|
||
|
|
||
|
ULONG CPackage_IRunnableObject::Release(void)
|
||
|
{
|
||
|
_cRef--; // interface ref count for debugging
|
||
|
return _pPackage->Release();
|
||
|
}
|
||
|
|
||
|
//////////////////////////////////
|
||
|
//
|
||
|
// IRunnable Object Methods...
|
||
|
//
|
||
|
// NOTE: To answer your question, yes, this is kind of a pointless interface,
|
||
|
// but some apps feel better when it's around. Basically we just tell what
|
||
|
// they want to hear (ie. return S_OK).
|
||
|
//
|
||
|
HRESULT CPackage_IRunnableObject::GetRunningClass(LPCLSID pclsid)
|
||
|
{
|
||
|
DebugMsg(DM_TRACE, "pack ro - GetRunningClass() called.");
|
||
|
|
||
|
if (pclsid == NULL)
|
||
|
return E_INVALIDARG;
|
||
|
|
||
|
*pclsid = CLSID_CPackage;
|
||
|
return S_OK;
|
||
|
}
|
||
|
|
||
|
HRESULT CPackage_IRunnableObject::Run(LPBC lpbc)
|
||
|
{
|
||
|
// we're an inproc-server, so telling us to run is kind of pointless
|
||
|
DebugMsg(DM_TRACE, "pack ro - Run() called.");
|
||
|
return S_OK;
|
||
|
}
|
||
|
|
||
|
BOOL CPackage_IRunnableObject::IsRunning()
|
||
|
{
|
||
|
DebugMsg(DM_TRACE, "pack ro - IsRunning() called.");
|
||
|
|
||
|
// we're an inproc-server, so this is kind of pointless
|
||
|
return TRUE;
|
||
|
}
|
||
|
|
||
|
HRESULT CPackage_IRunnableObject::LockRunning(BOOL, BOOL)
|
||
|
{
|
||
|
DebugMsg(DM_TRACE, "pack ro - LockRunning() called.");
|
||
|
|
||
|
// again, we're an inproc-server, so this is also pointless
|
||
|
return S_OK;
|
||
|
}
|
||
|
|
||
|
HRESULT CPackage_IRunnableObject::SetContainedObject(BOOL)
|
||
|
{
|
||
|
DebugMsg(DM_TRACE, "pack ro - SetContainedObject() called.");
|
||
|
// again, we don't really care about this
|
||
|
return S_OK;
|
||
|
}
|
||
|
|