📄 smtpmodel.cpp
字号:
CString strRecvDelInServer=GetValueByKeyFromBuf(strContentTemp,STR_KEY_RECVDELINSERVER);
CComBSTR bstTemp=strNickName;
pNickName->vt=VT_BSTR;
pNickName->bstrVal=bstTemp.Detach();
bstTemp=strNotWithOriMail;
pNotWithOriMail->vt=VT_BSTR;
pNotWithOriMail->bstrVal=bstTemp.Detach();
bstTemp=strMarkOriMsg;
pMarkOriMsg->vt=VT_BSTR;
pMarkOriMsg->bstrVal=bstTemp.Detach();
bstTemp=strSaveOutBox;
pSaveOutBox->vt=VT_BSTR;
pSaveOutBox->bstrVal=bstTemp.Detach();
bstTemp=strDelOption;
pDelOption->vt=VT_BSTR;
pDelOption->bstrVal=bstTemp.Detach();
bstTemp=strFullWarnRate;
pFullWarnRate->vt=VT_BSTR;
pFullWarnRate->bstrVal=bstTemp.Detach();
bstTemp=strRecvDelInServer;
pRecvDelInServer->vt=VT_BSTR;
pRecvDelInServer->bstrVal=bstTemp.Detach();
return S_OK;
}
STDMETHODIMP CSmtpModel::GetAssistInfoForWeb(VARIANT bstMailPath, VARIANT bstUserId,
VARIANT *pRejectMail, VARIANT *pEnableReply,
VARIANT *pAutoReplyContent)
{
// TODO: Add your implementation code here
USES_CONVERSION;
char* pMailPath;
char* pUserId;
VARIANTTOCHAR(bstMailPath,pMailPath);
VARIANTTOCHAR(bstUserId,pUserId);
CString strMailPath=pMailPath;
CString strUserId=pUserId;
strMailPath.TrimLeft();strMailPath.TrimRight();
strUserId.TrimLeft();strUserId.TrimRight();
if(strMailPath.IsEmpty()||strUserId.IsEmpty())
return S_FALSE;
if(strMailPath.GetAt(strMailPath.GetLength()-1)!='\\')
strMailPath+='\\';
CString strMailPathTemp=strMailPath;
strMailPathTemp+=strUserId;
strMailPathTemp+='\\';
CString strAssistIniPath=strMailPathTemp+STR_FILENAME_ASSISTINFO;
CString strContentTemp;
GetContentFromTextFile(strAssistIniPath,&strContentTemp);
CString strRejectMail=GetValueByKeyFromBuf(strContentTemp,STR_KEY_REJECTMAIL);
CString strEnableReply=GetValueByKeyFromBuf(strContentTemp,STR_KEY_ENABLEREPLY);
CString strAutoReplyContent=GetValueByKeyFromBuf(strContentTemp,STR_KEY_AUTOREPLYCONTENT);
CComBSTR bstTemp=strRejectMail;
pRejectMail->vt=VT_BSTR;
pRejectMail->bstrVal=bstTemp.Detach();
bstTemp=strEnableReply;
pEnableReply->vt=VT_BSTR;
pEnableReply->bstrVal=bstTemp.Detach();
bstTemp=strAutoReplyContent;
pAutoReplyContent->vt=VT_BSTR;
pAutoReplyContent->bstrVal=bstTemp.Detach();
return S_OK;
}
STDMETHODIMP CSmtpModel::GetLevelInfoForWeb(VARIANT bstMailPath, VARIANT bstUserId,
VARIANT *pMailBoxSize, VARIANT *pUserLevel)
{
// TODO: Add your implementation code here
USES_CONVERSION;
char* pMailPath;
char* pUserId;
VARIANTTOCHAR(bstMailPath,pMailPath);
VARIANTTOCHAR(bstUserId,pUserId);
CString strMailPath=pMailPath;
CString strUserId=pUserId;
strMailPath.TrimLeft();strMailPath.TrimRight();
strUserId.TrimLeft();strUserId.TrimRight();
if(strMailPath.IsEmpty()||strUserId.IsEmpty())
return S_FALSE;
if(strMailPath.GetAt(strMailPath.GetLength()-1)!='\\')
strMailPath+='\\';
CString strMailPathTemp=strMailPath;
strMailPathTemp+=strUserId;
strMailPathTemp+='\\';
CString strLevelIniPath=strMailPathTemp+STR_FILENAME_LEVELINFO;
CString strContentTemp;
GetContentFromTextFile(strLevelIniPath,&strContentTemp);
CString strMailBoxSize="";
strMailBoxSize=GetValueByKeyFromBuf(strContentTemp,STR_KEY_MAILBOXSIZE);
CString strUserLevel="";
strUserLevel=GetValueByKeyFromBuf(strContentTemp,STR_KEY_USERLEVEL);
pMailBoxSize->vt=VT_I4;
pMailBoxSize->lVal=atoi(strMailBoxSize);
pUserLevel->vt=VT_I4;
pUserLevel->lVal=atoi(strUserLevel);
return S_OK;
}
STDMETHODIMP CSmtpModel::CreateSysInfoForWeb(VARIANT bstMailPath, VARIANT bstUserId,
VARIANT bstNickName, VARIANT bstNotWithOriMail,
VARIANT bstMarkOriMsg, VARIANT bstSaveOutBox,
VARIANT bstDelOption, VARIANT bstFullWarnRate,
VARIANT bstRecvDelInServer)
{
// TODO: Add your implementation code here
USES_CONVERSION;
char* pMailPath;
char* pUserId;
VARIANTTOCHAR(bstMailPath,pMailPath);
VARIANTTOCHAR(bstUserId,pUserId);
CString strMailPath=pMailPath;
CString strUserId=pUserId;
strMailPath.TrimLeft();strMailPath.TrimRight();
strUserId.TrimLeft();strUserId.TrimRight();
if(strMailPath.IsEmpty()||strUserId.IsEmpty())
return S_FALSE;
if(strMailPath.IsEmpty()||strUserId.IsEmpty())
return S_FALSE;
if(strMailPath.GetAt(strMailPath.GetLength()-1)!='\\')
strMailPath+='\\';
CString strMailPathTemp=strMailPath;
strMailPathTemp+=strUserId;
strMailPathTemp+='\\';
::CreateDirectory(strMailPathTemp,NULL);
CString strSysInfoPath=strMailPathTemp+STR_FILENAME_SYSINFO;
HANDLE hFile=CreateFile(strSysInfoPath,GENERIC_WRITE,0,NULL,CREATE_ALWAYS,
FILE_ATTRIBUTE_NORMAL,(HANDLE)NULL);
if((HANDLE)hFile==INVALID_HANDLE_VALUE)
return S_OK;
CString strNickName;
char* pNickName;
VARIANTTOCHAR(bstNickName,pNickName);
strNickName=pNickName;
CString strTemp=STR_KEY_NICKNAME;
strTemp+=strNickName;
strTemp+="\r\n";
WRITESTRINGTOFILE(strTemp);
CString strNotWithOriMail;
char* pNotWithOriMail;
VARIANTTOCHAR(bstNotWithOriMail,pNotWithOriMail);
strNotWithOriMail=pNotWithOriMail;
strTemp=STR_KEY_NOTWITHORIMAIL;
strTemp+=strNotWithOriMail;
strTemp+="\r\n";
WRITESTRINGTOFILE(strTemp);
CString strMarkOriMsg;
char* pMarkOriMsg;
VARIANTTOCHAR(bstMarkOriMsg,pMarkOriMsg);
strMarkOriMsg=pMarkOriMsg;
strTemp=STR_KEY_MARKORIMSG;
strTemp+=strMarkOriMsg;
strTemp+="\r\n";
WRITESTRINGTOFILE(strTemp);
CString strSaveOutBox;
char* pSaveOutBox;
VARIANTTOCHAR(bstSaveOutBox,pSaveOutBox);
strSaveOutBox=pSaveOutBox;
strTemp=STR_KEY_SAVEOUTBOX;
strTemp+=strSaveOutBox;
strTemp+="\r\n";
WRITESTRINGTOFILE(strTemp);
CString strDelOption;
char* pDelOption;
VARIANTTOCHAR(bstDelOption,pDelOption);
strDelOption=pDelOption;
strTemp=STR_KEY_DELOPTION;
strTemp+=strDelOption;
strTemp+="\r\n";
WRITESTRINGTOFILE(strTemp);
CString strFullWarnRate;
char* pFullWarnRate;
VARIANTTOCHAR(bstFullWarnRate,pFullWarnRate);
strFullWarnRate=pFullWarnRate;
strTemp=STR_KEY_FULLWARNRATE;
strTemp+=strFullWarnRate;
strTemp+="\r\n";
WRITESTRINGTOFILE(strTemp);
CString strRecvDelInServer;
char* pRecvDelInServer;
VARIANTTOCHAR(bstRecvDelInServer,pRecvDelInServer);
strRecvDelInServer=pRecvDelInServer;
strTemp=STR_KEY_RECVDELINSERVER;
strTemp+=strRecvDelInServer;
strTemp+="\r\n";
WRITESTRINGTOFILE(strTemp);
CloseHandle(hFile);
return S_OK;
}
STDMETHODIMP CSmtpModel::CreateUserInfoForWeb(VARIANT bstMailPath, VARIANT bstUserId,
VARIANT bstTrueName, VARIANT bstGender,
VARIANT bstBirth, VARIANT bstPersonalID,
VARIANT bstMailBox, VARIANT bstCity,
VARIANT bstEducation,
VARIANT bstMaritalStatus,
VARIANT bstJobType, VARIANT bstOccupation,
VARIANT bstIncome, VARIANT bstNetCost,
VARIANT bstEnquiry)
{
// TODO: Add your implementation code here
USES_CONVERSION;
char* pMailPath;
char* pUserId;
VARIANTTOCHAR(bstMailPath,pMailPath);
VARIANTTOCHAR(bstUserId,pUserId);
CString strMailPath=pMailPath;
CString strUserId=pUserId;
strMailPath.TrimLeft();strMailPath.TrimRight();
strUserId.TrimLeft();strUserId.TrimRight();
if(strMailPath.IsEmpty()||strUserId.IsEmpty())
return S_FALSE;
if(strMailPath.IsEmpty()||strUserId.IsEmpty())
return S_FALSE;
if(strMailPath.GetAt(strMailPath.GetLength()-1)!='\\')
strMailPath+='\\';
CString strMailPathTemp=strMailPath;
strMailPathTemp+=strUserId;
strMailPathTemp+='\\';
::CreateDirectory(strMailPathTemp,NULL);
CString strUserInfoPath=strMailPathTemp+STR_FILENAME_USERINFO;
HANDLE hFile=CreateFile(strUserInfoPath,GENERIC_WRITE,0,NULL,CREATE_ALWAYS,
FILE_ATTRIBUTE_NORMAL,(HANDLE)NULL);
if((HANDLE)hFile==INVALID_HANDLE_VALUE)
return S_OK;
CString strTruePath;
char* pTruePath;
VARIANTTOCHAR(bstTrueName,pTruePath);
strTruePath=pTruePath;
CString strTemp=STR_KEY_TRUENAME;
strTemp+=strTruePath;
strTemp+="\r\n";
WRITESTRINGTOFILE(strTemp);
CString strGender;
char* pGender;
VARIANTTOCHAR(bstGender,pGender);
strGender=pGender;
strTemp=STR_KEY_GENDER;
strTemp+=strGender;
strTemp+="\r\n";
WRITESTRINGTOFILE(strTemp);
CString strBirth;
char* pBirth;
VARIANTTOCHAR(bstBirth,pBirth);
strBirth=pBirth;
strTemp=STR_KEY_BIRTH;
strTemp+=strBirth;
strTemp+="\r\n";
WRITESTRINGTOFILE(strTemp);
CString strPersonalID;
char* pPersonalID;
VARIANTTOCHAR(bstPersonalID,pPersonalID);
strPersonalID=pPersonalID;
strTemp=STR_KEY_PERSONALID;
strTemp+=strPersonalID;
strTemp+="\r\n";
WRITESTRINGTOFILE(strTemp);
CString strMailBox;
char* pMailBox;
VARIANTTOCHAR(bstMailBox,pMailBox);
strMailBox=pMailBox;
strTemp=STR_KEY_MAILBOX;
strTemp+=strMailBox;
strTemp+="\r\n";
WRITESTRINGTOFILE(strTemp);
CString strCity;
char* pCity;
VARIANTTOCHAR(bstCity,pCity);
strCity=pCity;
strTemp=STR_KEY_CITY;
strTemp+=strCity;
strTemp+="\r\n";
WRITESTRINGTOFILE(strTemp);
CString strEducation;
char* pEducation;
VARIANTTOCHAR(bstEducation,pEducation);
strEducation=pEducation;
strTemp=STR_KEY_EDUCATION;
strTemp+=strEducation;
strTemp+="\r\n";
WRITESTRINGTOFILE(strTemp);
CString strMaritalStatus;
char* pMaritalStatus;
VARIANTTOCHAR(bstMaritalStatus,pMaritalStatus);
strMaritalStatus=pMaritalStatus;
strTemp=STR_KEY_MARITALSTATUS;
strTemp+=strMaritalStatus;
strTemp+="\r\n";
WRITESTRINGTOFILE(strTemp);
CString strJobType;
char* pJobType;
VARIANTTOCHAR(bstJobType,pJobType);
strJobType=pJobType;
strTemp=STR_KEY_JOBTYPE;
strTemp+=strJobType;
strTemp+="\r\n";
WRITESTRINGTOFILE(strTemp);
CString strOccupation;
char* pOccupation;
VARIANTTOCHAR(bstOccupation,pOccupation);
strOccupation=pOccupation;
strTemp=STR_KEY_OCCUPATION;
strTemp+=strOccupation;
strTemp+="\r\n";
WRITESTRINGTOFILE(strTemp);
CString strIncome;
char* pIncome;
VARIANTTOCHAR(bstIncome,pIncome);
strIncome=pIncome;
strTemp=STR_KEY_INCOME;
strTemp+=strIncome;
strTemp+="\r\n";
WRITESTRINGTOFILE(strTemp);
CString strNetCost;
char* pNetCost;
VARIANTTOCHAR(bstNetCost,pNetCost);
strNetCost=pNetCost;
strTemp=STR_KEY_NETCOST;
strTemp+=strNetCost;
strTemp+="\r\n";
WRITESTRINGTOFILE(strTemp);
CString strEnquiry;
char* pEnquiry;
VARIANTTOCHAR(bstEnquiry,pEnquiry);
strEnquiry=pEnquiry;
strTemp=STR_KEY_ENQUIRY;
strTemp+=strEnquiry;
strTemp+="\r\n";
WRITESTRINGTOFILE(strTemp);
CloseHandle(hFile);
return S_OK;
}
STDMETHODIMP CSmtpModel::DelGroupNameForWeb(VARIANT bstMailPath, VARIANT bstUserId,
VARIANT bstGroupName)
{
// TODO: Add your implementation code here
USES_CONVERSION;
char* pMailPath;
char* pUserId;
char* pGroupName;
VARIANTTOCHAR(bstMailPath,pMailPath);
VARIANTTOCHAR(bstUserId,pUserId);
VARIANTTOCHAR(bstGroupName,pGroupName);
CString strMailPath=pMailPath;
CString strUserId=pUserId;
CString strGroupName=pGroupName;
strMailPath.TrimLeft();strMailPath.TrimRight();
strUserId.TrimLeft();strUserId.TrimRight();
strGroupName.TrimLeft();strGroupName.TrimRight();
if(strMailPath.IsEmpty()||strUserId.IsEmpty()||strGroupName.IsEmpty())
return S_FALSE;
if(strMailPath.GetAt(strMailPath.GetLength()-1)!='\\')
strMailPath+='\\';
CString strMailPathTemp=strMailPath;
strMailPathTemp+=strUserId;
strMailPathTemp+='\\';
::CreateDirectory(strMailPathTemp,NULL);
CString strGroupIniPath=strMailPathTemp+STR_FILENAME_GROUPLIST;
DelGroupNameToIni(strGroupIniPath,strGroupName);
return S_OK;
}
STDMETHODIMP CSmtpModel::DelGroupUserForWeb(VARIANT bstMailPath, VARIANT bstUserId,
VARIANT bstGroupUserId)
{
// TODO: Add your implementation code here
USES_CONVERSION;
char* pMailPath;
char* pUserId;
char* pGroupUserId;
VARIANTTOCHAR(bstMailPath,pMailPath);
VARIANTTOCHAR(bstUserId,pUserId);
VARIANTTOCHAR(bstGroupUserId,pGroupUserId);
CString strMailPath=pMailPath;
CString strUserId=pUserId;
CString strGroupUserId=pGroupUserId;
strMailPath.TrimLeft();strMailPath.TrimRight();
strUserId.TrimLeft();strUserId.TrimRight();
strGroupUserId.TrimLeft();strGroupUserId.TrimRight();
if(strMailPath.IsEmpty()||strUserId.IsEmpty()||strGroupUserId.IsEmpty())
return S_FALSE;
if(strMailPath.GetAt(strMailPath.GetLength()-1)!='\\')
strMailPath+='\\';
CString strMailPathTemp=strMailPath;
strMailPathTemp+=strUserId;
strMailPathTemp+='\\';
CString strGroupUserIniPath=strMailPathTemp+STR_FILENAME_GROUPUSERLIST;
DelGroupUserToIni(strGroupUserIniPath,strGroupUserId);
return S_OK;
}
STDMETHODIMP CSmtpModel::GetGroupUserListForWeb(VARIANT bstMailPath, VARIANT bstUserId,
VARIANT bstGroupName, VARIANT *pMemberList)
{
// TODO: Add your implementation code here
USES_CONVERSION;
char* pMailPath;
char* pUserId;
char* pGroupName;
VARIANTTOCHAR(bstMailPath,pMailPath);
VARIANTTOCHAR(bstUserId,pUserId);
VARIANTTOCHAR(bstGroupName,pGroupName);
CString strMailPath=pMailPath;
CString strUserId=pUserId;
CString strGroupName=pGroupName;
strMailPath.TrimLeft();strMailPath.TrimRight();
strUserId.TrimLeft();strUserId.TrimRight();
strGroupName.TrimLeft();strGroupName.TrimRight();
if(strMailPath.IsEmpty()||strUserId.IsEmpty())
return S_FALSE;
if(strMailPath.GetAt(strMailPath.GetLength()-1)!='\\')
strMailPath+='\\';
CString strMailPathTemp=strMailPath;
strMailPathTemp+=strUserId;
strMailPathTemp+='\\';
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -