⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 d_alias.cpp

📁 一个SMTP邮件发送的源代码
💻 CPP
字号:
// D_Alias.cpp: Implementierungsdatei
//

#include "stdafx.h"
#include "InetServer.h"
#include "D_Alias.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// Dialogfeld D_Alias 


D_Alias::D_Alias(CWnd* pParent /*=NULL*/)
	: CDialog(D_Alias::IDD, pParent)
{
	//{{AFX_DATA_INIT(D_Alias)
	m_forward1 = _T("");
	m_forward2 = _T("");
	//}}AFX_DATA_INIT
}


void D_Alias::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(D_Alias)
	DDX_Control(pDX, IDC_COMBO1, mc_forward2);
	DDX_Control(pDX, IDC_LIST, mc_list);
	DDX_Text(pDX, IDC_EDITFOWARD1, m_forward1);
	DDX_CBString(pDX, IDC_COMBO1, m_forward2);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(D_Alias, CDialog)
	//{{AFX_MSG_MAP(D_Alias)
	ON_BN_CLICKED(IDOK, OnOk)
	ON_BN_CLICKED(IDC_ADDFORWARD, OnAddforward)
	ON_BN_CLICKED(IDC_CHNGFORWARD, OnChngforward)
	ON_BN_CLICKED(IDC_DELFORWARD, OnDelforward)
	ON_NOTIFY(NM_CLICK, IDC_LIST, OnClickList)
	ON_NOTIFY(LVN_ITEMCHANGED, IDC_LIST, OnItemchangedList)
	ON_NOTIFY(LVN_ITEMCHANGING, IDC_LIST, OnItemchangingList)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// Behandlungsroutinen f黵 Nachrichten D_Alias 

void D_Alias::OnOk() 
{

	FILE *stream;





   if( (stream  = fopen("forward.ctl", "wt" )) != NULL )
   {
	   CString forward1;
	   CString forward2;

for (int i = 0;i<=mc_list.GetItemCount()-1;i++)
{
forward1= mc_list.GetItemText( i, 0 );
forward2= mc_list.GetItemText( i, 1);

fprintf(stream,"%s %s\r\n",forward1,forward2);
}

fclose(stream);
}
else
{
MessageBox("Could not save forward.ctl!");

}



	CDialog::OnOK();

	
}

void D_Alias::OnAddforward() 
{
char tempstr[255];


		LV_ITEM			lvitem;
		int iActualItem,iIcon;
		iIcon = 0;

		UpdateData(TRUE);

		if (m_forward1 == "")
		{
			MessageBox("You must enter a from-address!\nFor example:webmaster");
			return;

		}
		if (m_forward2 == "")
		{
			MessageBox("You must enter a to-address!\nFor example:bob");
			return;

		}
			lvitem.mask = LVIF_TEXT | LVIF_IMAGE;
			lvitem.iItem = 0;
			lvitem.iSubItem = 0;
			lvitem.iImage = iIcon;
			sprintf(tempstr,"%s",m_forward1);
			lvitem.pszText = tempstr;
			iActualItem = mc_list.InsertItem(&lvitem);
			lvitem.mask = LVIF_TEXT;
			lvitem.iItem = iActualItem;
			
			lvitem.iSubItem = 1;
			sprintf(tempstr,"%s",m_forward2);
			lvitem.pszText = tempstr;
			mc_list.SetItem(&lvitem);

	UpdateData(FALSE);


	
}

void D_Alias::OnChngforward() 
{
char tempstr[255];


		LV_ITEM			lvitem;
		int iIcon;
		iIcon = 0;

		UpdateData(TRUE);

		if (m_forward1 == "")
		{
			MessageBox("You must enter a from-address!\nFor example:webmaster");
			return;

		}
		if (m_forward2 == "")
		{
			MessageBox("You must enter a to-address!\nFor example:bob");
			return;

		}

		char tempstr2[255];
		sprintf(tempstr2,"%s",m_forward2);

			lvitem.mask = LVIF_TEXT;
			lvitem.iItem = mc_list.GetNextItem(-1,LVNI_SELECTED);
			lvitem.iSubItem = 0;
			lvitem.iImage = 0;
			sprintf(tempstr,"%s",m_forward1);
			lvitem.pszText = tempstr;
			mc_list.SetItem(&lvitem);

			lvitem.iSubItem = 1;
			
			lvitem.pszText = tempstr2;
			mc_list.SetItem(&lvitem);

			m_forward1 = tempstr;
			m_forward2 = tempstr2;

	UpdateData(FALSE);


	
}

void D_Alias::OnDelforward() 
{

if (mc_list.GetNextItem(-1,LVNI_SELECTED) == -1) return;

UpdateData(TRUE);
mc_list.DeleteItem(mc_list.GetNextItem(-1,LVNI_SELECTED));
	
	
}

BOOL D_Alias::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	CImageList	*m_pimagelistSmall;
	m_pimagelistSmall = new CImageList();
	m_pimagelistSmall->Create(16, 16, TRUE/*bMask*/, 1, 4);
	m_pimagelistSmall->Add(AfxGetApp()->LoadIcon(IDI_FORWARD));

	LV_COLUMN		lvcolumn;

	CRect			rect1;
	
	TCHAR			rgtsz1[2][20] = {_T("From"),_T("To")};

	mc_list.SetImageList(m_pimagelistSmall, LVSIL_SMALL);
	mc_list.GetWindowRect(&rect1);

		lvcolumn.mask = LVCF_FMT | LVCF_SUBITEM | LVCF_TEXT | LVCF_WIDTH;
		lvcolumn.fmt = LVCFMT_LEFT;
		lvcolumn.pszText = rgtsz1[0];
		lvcolumn.iSubItem = 0;

		lvcolumn.cx = 130;  

		mc_list.InsertColumn(0, &lvcolumn);  
				

		lvcolumn.pszText = rgtsz1[1];
		lvcolumn.iSubItem = 1;
		lvcolumn.cx = 180;  
		
		mc_list.InsertColumn(1, &lvcolumn);  
		

		LV_ITEM			lvitem;
		int iActualItem,iIcon;
		iIcon = 0;


char tempstr[255];		
FILE *stream;
if( (stream  = fopen("forward.ctl", "rt" )) != NULL )
  {

while (!feof(stream))
{
char s1[255];
char s2[255];
fgets(tempstr,255,stream);
if (!feof(stream))
{
UpdateData(TRUE);
sprintf(s1,"");
sprintf(s2,"");
sscanf(tempstr,"%s %s",s1,s2);

			lvitem.mask = LVIF_TEXT | LVIF_IMAGE;
			lvitem.iItem = 0;
			lvitem.iSubItem = 0;
			lvitem.iImage = iIcon;
			tempstr[strlen(tempstr)-1] = '\0';
			lvitem.pszText = s1;
			
			iActualItem = mc_list.InsertItem(&lvitem);
			
			lvitem.mask = LVIF_TEXT;
			lvitem.iItem = iActualItem;
			lvitem.iSubItem = 1;
			lvitem.pszText = s2;

			mc_list.SetItem(&lvitem);
UpdateData(FALSE);
}
}
fclose(stream);
}
else
{
MessageBox("Could not open forward.ctl!");
}




		if( (stream  = fopen("popuser.ctl", "rt" )) != NULL )
		{
			
			while (!feof(stream))
			{
				fgets(tempstr,255,stream);
				if (!feof(stream))
				{
					int pusrpos = 0;
					char seps[] = ";\r\n";
					char tempstr2[255];
					char *token;

					token = strtok( tempstr, seps );
					while( token != NULL )
					{
					sprintf(tempstr2,"%s",token);

					for (UINT x = 1;x<=strlen(tempstr2)-1;x++) tempstr2[x-1] = tempstr2[x];
					tempstr2[strlen(tempstr2)-2] = '\0';
					

					if (pusrpos == 0)
					{
						strupr(tempstr2);
						mc_forward2.AddString(tempstr2);

					}

					pusrpos++;
					token = strtok( NULL, seps );
					}
					

					
				}
			}
			fclose(stream);
		}




	
	return TRUE;  // return TRUE unless you set the focus to a control

}

void D_Alias::OnClickList(NMHDR* pNMHDR, LRESULT* pResult) 
{
	UpdateData(TRUE);
	m_forward1 =  mc_list.GetItemText(mc_list.GetNextItem(-1,LVNI_SELECTED),0);
	m_forward2 =  mc_list.GetItemText(mc_list.GetNextItem(-1,LVNI_SELECTED),1);
	UpdateData(FALSE);
	
	*pResult = 0;
}

void D_Alias::OnItemchangedList(NMHDR* pNMHDR, LRESULT* pResult) 
{
	NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
	UpdateData(TRUE);
	m_forward1 =  mc_list.GetItemText(mc_list.GetNextItem(-1,LVNI_SELECTED),0);
	m_forward2 =  mc_list.GetItemText(mc_list.GetNextItem(-1,LVNI_SELECTED),1);
	UpdateData(FALSE);
	
	*pResult = 0;
}

void D_Alias::OnItemchangingList(NMHDR* pNMHDR, LRESULT* pResult) 
{
	NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
	UpdateData(TRUE);
	m_forward1 =  mc_list.GetItemText(mc_list.GetNextItem(-1,LVNI_SELECTED),0);
	m_forward2 =  mc_list.GetItemText(mc_list.GetNextItem(-1,LVNI_SELECTED),1);
	UpdateData(FALSE);
	
	*pResult = 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -