windows-nt/Source/XPSP1/NT/admin/netui/mprui/test2/nr.cxx
2020-09-26 16:20:57 +08:00

75 lines
984 B
C++

#include "headers.hxx"
#pragma hdrstop
#include "nr.hxx"
LPTSTR
NewDup(
IN const TCHAR* psz
)
{
if (NULL == psz)
{
return NULL;
}
LPTSTR pszRet = new TCHAR[_tcslen(psz) + 1];
if (NULL == pszRet)
{
return NULL;
}
_tcscpy(pszRet, psz);
return pszRet;
}
CNetResource::CNetResource(LPNETRESOURCE pnr)
{
if (NULL == pnr)
{
_bValid = FALSE;
}
else
{
_bValid = TRUE;
_nr = *pnr;
// now copy strings
_nr.lpLocalName = NewDup(pnr->lpLocalName);
_nr.lpRemoteName = NewDup(pnr->lpRemoteName);
_nr.lpComment = NewDup(pnr->lpComment);
_nr.lpProvider = NewDup(pnr->lpProvider);
}
}
CNetResource::~CNetResource()
{
if (_bValid)
{
delete[] _nr.lpLocalName;
delete[] _nr.lpRemoteName;
delete[] _nr.lpComment;
delete[] _nr.lpProvider;
}
}
LPNETRESOURCE
CNetResource::GetNetResource(
VOID
)
{
if (_bValid)
{
return &_nr;
}
else
{
return NULL;
}
}