Back

// PSLModule.cpp : Implementation of CPSLModule

#include "stdafx.h"
#include "PSLModule.h"

CPSLModule::CPSLModule()
{
   m_sFileName = _T("");
   m_sFilePath = _T("");
   m_sFileDir = _T("");
}

HRESULT CPSLModule::FinalConstruct()
{
   return S_OK;
}

void CPSLModule::FinalRelease()
{
}

void CPSLModule::Initialize(HMODULE hModule)
{
   tstring path;
   path.resize(MAX_FILE_PATH);
   if(::GetModuleFileName(hModule, (LPTSTR)path.c_str(), MAX_FILE_PATH) > 0)
      CPSLUtilities::GetLongFilePathDetails(path.c_str(), m_sFilePath, m_sFileDir, m_sFileName);
}

////////////////////////////////////////////////////////////////////////
// Interface Implementation;
////////////////////////////////////////////////////////////////////////

STDMETHODIMP CPSLModule::get_FileName(BSTR * pValue)
{
   PSL_BEGIN

   *pValue = m_sFileName.copy();

   PSL_END
}

STDMETHODIMP CPSLModule::get_FilePath(BSTR * pValue)
{
   PSL_BEGIN

   *pValue = m_sFilePath.copy();

   PSL_END
}

STDMETHODIMP CPSLModule::get_FileDir(BSTR * pValue)
{
   PSL_BEGIN

   *pValue = m_sFileDir.copy();

   PSL_END
}

STDMETHODIMP CPSLModule::get_Version(IPSLModuleVersion ** ppValue)
{
   PSL_BEGIN

   *ppValue = m_Version;

   CPSLModuleVersion * pVer = m_Version;
   pVer->InitInternal(m_sFilePath);
   pVer->Release();

   PSL_END
}

Top