-
VC++ gethostbyname获取主机名和IP地址
VC++ 获取主机名和IP地址,也就是根据主机名获得IP地址,使用了gethostbyname函数,然后再使用addr.Format格式化获取到IP地址。具体来看以下代码获取到IP地址:
// 获得主机ip地址
struct hostent * phost;
phost = gethostbyname(szhostname);//根据主机名获得IP地址
m_strName=szhostname;
int h_length=4;
for( int j = 0; j {
CString addr;
if( j > 0 )
str += ".";
addr.Format("%u", (unsigned int)((unsigned char*)phost->h_addr_list[0])[j]);
str += addr;
}
m_strIP=str;
- 2022-11-09 11:50:03下载
- 积分:1
-
VC++ 实现定制打印页的页眉和页脚
VC++ 实现定制打印页的页眉和页脚,除了自定义打印页脚和页眉外,还可根据每页显示行数,设置打印页数,并且在需要时,屏蔽默认函数对OnDraw的调用。打印方面的定制,可参考以下代码:
void CMultiPrint2View::PrintHeader(CDC *pDC)//定制页眉
{
pDC->TextOut(0,0,"设置打印页眉和页脚测试:来首诗吧:再别康桥");
}
void CMultiPrint2View::PrintFooter(CDC *pDC)//定制页角
{
CMultiPrint2Doc* pDoc = GetDocument();//获取文档指针
ASSERT_VALID(pDoc);
CString str;
CPoint point(0,-1440*10-1000);
str.Format("当前文档:%s",(LPCSTR)pDoc->GetTitle());//获取当前文档名
pDC->TextOut(point.x,point.y,str);
str.Format("第%d页,共%d页",m_nPage,(pDoc->m_stringArray.GetUpperBound()/pDoc->m_LinePerPage+1));
CSize size=pDC->GetTextExtent(str);//获取输出文本宽度
point.x+=1440*6+1600-size.cx;
pDC->TextOut(point.x,point.y,str);
}完整的代码请下载源码吧。
- 2022-07-05 00:30:40下载
- 积分:1
-
VC++ 通过读写文件实现登录对话框
文件读写:通过读写文件实现登录对话框,执行时将创建 MySaveFile 文件夹,在文件 pwd.ini 中生成密码,并向pwd.ini文件中写入初始密码888. 然后关闭文件,登录时,将读取文件中的内容,并判断用户的输入是否和pwd.ini 文件中存储的用户名和密码一致,从而判断用户是否可以正确登录。
- 2022-06-26 14:35:10下载
- 积分:1
-
vc++ 降序查询及SQL语句实现
vc++ 对数据进行 降序查询的例子,还包括了SQL语句实现,降序查询后,查询到的内容显示在DataGrid中,这个例子需要结合数据库才能实现。数据库查询语句如下:
UpdateData(true);
m_adodc.SetRecordSource("select*from shuzcx order by 年龄 desc");
m_adodc.Refresh();
- 2022-02-18 16:15:52下载
- 积分:1
-
VC++ CFileException异常处理用法范例
VC++ CFileException异常处理用法范例,
catch(CFileException* e)
{
switch(e->m_cause)
{
case CFileException::fileNotFound:
{
strMessage.Format("打开文件时发生异常(try/catch):
在指定位置没有找到文件%s
",strFile);
AfxMessageBox(strMessage);
TRACE("即将删除捕获到的异常对象CFileException::fileNotFound
");
AfxMessageBox("即将删除捕获到的异常对象CFileException::fileNotFound");
//删除异常对象
e->Delete();
TRACE("成功删除捕获到的异常对象CFileException::fileNotFound
");
AfxMessageBox("成功删除捕获到的异常对象CFileException::fileNotFound");
break;
}
case CFileException::invalidFile:
{
strMessage.Format("打开文件时发生异常(try/catch):
文件%无效
",strFile);
AfxMessageBox(strMessage);
TRACE("即将删除捕获到的异常对象CFileException::invalidFile
");
AfxMessageBox("即将删除捕获到的异常对象CFileException::invalidFile");
//删除异常对象
e->Delete();
TRACE("成功删除捕获到的异常对象CFileException::invalidFile
");
AfxMessageBox("成功删除捕获到的异常对象CFileException::invalidFile");
break;
}
default:
break;
}
}
- 2022-01-26 02:02:12下载
- 积分:1
-
VC++ ado 登录模块实现范例
VC++ ado 登录模块实现范例,因为使用ADO模块,所以要先初始化COM组件库,然后调用ADO库连接数据库,读取用户名密码是否与数据库的相符,相符则登录成功,不相符则弹出提示信息。本源码比较简单,演示了基本的基于数据库的用户名和密码判断程序,面向VC++初学者吧。
- 2023-03-17 05:10:03下载
- 积分:1
-
VC++ 6.0 OnCmdMsg消息处理和自定义消息对话框用法
VC++ 6.0 消息处理和自定义消息对话框用法,通过重载函数OnCmdMsg从而使不能够处理主框架命令的非模式对话框,具备了响应主框架命令的功能。二是说明自定义消息的用法。重载OnCmdMsg后,改变的窗口标题,自定义消息参数:x=%d,y=%d"。
- 2022-01-25 16:51:34下载
- 积分:1
-
VC++ 使用WinInet通过HTTP协议读取网上文件
VC++ 6.0 使用WinInet通过HTTP协议读取网上文件
在一个按钮事件中定义了网络连接Session:
CInternetSession httpsession;//定义网络连接Session
CString Line;
CInternetFile* webfile=NULL;//定义一个文件对象指针
UpdateData();
if(m_Url.Left(7)!="http://")//如果地址不含HTTP类型标志则添加本地文件类型标志
读出文件前一部分,如果文件多于80行,三示例中只显示前80行.然后更新显示文件:
UpdateData(FALSE);//更新显示文件
delete webfile;//删除文件
GetDlgItem (IDC_SHOW)->EnableWindow (FALSE);//禁用显示按钮
httpsession.Close();//关闭连接
- 2023-09-07 18:35:03下载
- 积分:1
-
VC++ 创建可以显示“最近打开”文件的功能
VC++ 创建可以显示“最近打开”文件的功能,也就是为菜单项增添历史记录的功能,让打开的文件记录显示在菜单列表中,方便用户下一次打开文件,挺人性化的一个功能。现在的word、WPS等软件,打开后,用户都可以从菜单中选择最近打开的文件,快速找到自己的文档,本VC++源码就是模拟了这一功能。运行效果请参见下边的测试截图。
- 2023-05-17 09:10:03下载
- 积分:1
-
VC++ 6.0 使用消息实现线程通信
线程通信:使用消息实现线程通信,一个了解多线程与消息通信的例子,以下是实现的主要代码:
LRESULT CThreadCommunicationDlg::OnDisplayResult(WPARAM wParam,LPARAM lParam)
{
int nResult = (int)wParam;
SetDlgItemInt(IDC_STATIC_RESULT,nResult,FALSE);
return 0;
}
void CThreadCommunicationDlg::OnButtonCalculate()
{
m_pCalculateThread=
(CCalculateThread*)AfxBeginThread(RUNTIME_CLASS(CCalculateThread));
Sleep(200);
m_pCalculateThread->PostThreadMessage(WM_CALCULATE,m_nLastOperand,NULL);
}
完整的源代码请下载本源码包。
- 2022-02-02 07:06:27下载
- 积分:1