char *Convert2ANSIString(CString strSource)
{
if(strSource.IsEmpty()) return NULL;
char *pBuffer=NULL;
int nBufferSize=0;
#ifdef _UNICODE
nBufferSize=WideCharToMultiByte(CP_ACP,0,(LPCTSTR)strSource,-1,NULL,0,NULL,NULL)+1;
pBuffer=new char[nBufferSize];
memset(pBuffer,0,sizeof(char)*nBufferSize);
WideCharToMultiByte(CP_ACP,0,(LPCTSTR)strSource,-1,pBuffer,nBufferSize,NULL,NULL);
#else
nBufferSize=strSource.GetLength()+1;
pBuffer=new char[nBufferSize];
memset(pBuffer,0,sizeof(char)*nBufferSize);
strcpy_s(pBuffer,nBufferSize,(LPCTSTR)strSource);
#endif
return pBuffer;
}