2012-07-08 22:56
⁄ 工业·编程
⁄ 共 2184字
很多程序都可以缩小到电脑的右下角变成一个图标,这个就是在程序中添加托盘消息,添加的步骤如下:
1.在XXXdlg.h中添加托盘函数的void toTray();
2.在XXXdlg.cpp中写函数定义:
void CXXXDlg::toTray() { NOTIFYICONDATA nid; nid.cbSize=(DWORD)sizeof(NOTIFYICONDATA); nid.hWnd=this->m_hWnd; nid.uID=IDR_MAINFRAME; nid.uFlags=NIF_ICON|NIF_MESSAGE|NIF_T...
VC阅读全文
2012-07-08 22:54
⁄ 工业·编程
⁄ 共 2080字
网络编程中经常需要获得类似于路由信息,ip信息之类的东西。下面的这个函数可以实现读取网卡信息:
void MASKinfo() { PIP_ADAPTER_INFO pAdapterInfo; PIP_ADAPTER_INFO pAdapter = NULL; DWORD dwRetVal = 0; DWORD index=0; CString str; pAdapterInfo = (IP_ADAPTER_INFO*)malloc(sizeof(IP_ADAPTER_IN...
VC阅读全文
2012-07-08 22:53
⁄ 工业·编程
⁄ 共 467字
有时候我们需要添加自己的消息函数来完成特定的功能,添加消息函数有3个步骤:
1.在stdafx.h中,添加消息函数的宏定义
#define WM_MY_MESSAGE WM_USER + 102 其中WM_USER是VC提供给我们定义自己的消息函数的。
2.在要使用的类的.h文件里面添加函数声明:
LRESULT OnMyMessage(WPARAM wParam, LPARAM lParam);
3.在.cpp文件的BEGIN_MESSAGE_MAP(CGFGAME, CDialog)中间添加:
ON_MESSAGE(WM_MY_MESSAGE,OnMyMessage)...
VC阅读全文
2012-07-08 22:51
⁄ 工业·编程
⁄ 共 908字
在对文件操作的时候,我们很多时候需要知道文件的全路径,写了一个函数来获取当前路径:
////////////////////////////////////////////////////////////////////////////// ////////获得当前路径///////////////////////// ////////////////////////////////////////////////////////////////////////////// static CString GetAppPath(BOOL IsDLL , HINSTANCE instance , BOOL IsFullPathName ) { TCHAR sFile...
VC阅读全文
2012-07-08 22:44
⁄ 工业·编程
⁄ 共 1291字
一般自动安装就是指下载完成之后调用 WinExec("//XXX.exe",SW_SHOWNORMAL);来启动exe,会经常遇到的问题是很多软件都设置了只能开一个客户端的功能,因此在不关闭本身运行的程序之前不能完成自动安装的功能。
因此很多时候都会单独做一个自动更新的程序,在你点击启动主程序时,先启动updata程序,然后关闭主程序,当更新完成之后再调用主程序来达到自动安装的功能!
具体实现...
VC阅读全文
2012-07-08 22:42
⁄ 工业·编程
⁄ 共 1932字
首先添加进度条控件,添加其关联的变量m_progress,先将进度条条初始化m_progress.SetPos(0);然后调用下载函数InternetGetFile (CString szUrl,CString szFileName).前一个参数是远程文件的路径及名称,后一个是本地保存文件的路径很名称,在这里远程文件路径必须要带http://前缀。
int CLOGIN::InternetGetFile (CString szUrl,CString szFileName) { char filebuf[512]; CInte...
VC阅读全文
2012-07-08 22:40
⁄ 工业·编程
⁄ 共 903字
做产品软件,我们经常遇到的是软件更新问题,更新问题涉及到的内容还比较多。
1.是打开软件要自动检测,这样就需要一个多线程来实现。
2.要在网上下载最新版本的版本号,与本地文件比较,有更新就需要从指定站点下载最新的软件包。
3.下载过程中需要显示下载的进度,需要使用进度条软件。
4.下载完成后的安装包我们需要自动安装。
在这里我们先来讲一下多线程自动检测。
首先定义一个线程函数:
UINT update...
VC阅读全文
2012-07-08 22:38
⁄ 工业·编程
⁄ 共 924字
我们在做客户端软件的时候,经常会遇到要使用密码保存的功能,其实密码保存功能的原理很简单:当我们在点击保存密码的按钮时,我们将读取用户名和密码框里面的字符串,存储在某个指定的文件里面,然后在初始化函数里面,读取这个文件的内容,显示在用户名和密码框中,即可!
具体代码实现
双击保存用户名的复选框,添加响应函数
void...
VC, 密码阅读全文
2012-07-08 22:34
⁄ 工业·编程
⁄ 共 1466字
ID--HANDLE--HWND三者之间的互相转换 id->句柄 hWnd = ::GetDlgItem(hParentWnd,id); id->指针 CWnd::GetDlgItem();
句柄->id id = GetWindowLong(hWnd,GWL_ID); 句柄->指针 CWnd *pWnd=CWnd::FromHandle(hWnd);
指针->ID &...
VC阅读全文
2012-07-08 22:27
⁄ 工业·编程
⁄ 共 1354字
MFC界面编程无非不是根据已有类函数对控件进行设置,就是重载类函数重绘控件,达到自己想要的效。思路是很简单,但是实际操作起来就。。。。。
之前用了SkinPPWTL.dll来加载皮肤完成了界面的美化,使用起来很简单,导入库函数,加载DLL,在APP文件InitInstance()里面初始化,加载皮肤,最后在ExitInstance() 释放变量即可。虽然可用的皮肤很少,但是比起系统默认的界面要好很多。在后来...
MFC阅读全文