上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 28 下一页
摘要: 一、问题的提出编写一个耗时的单线程程序: 新建一个基于对话框的应用程序SingleThread,在主对话框IDD_SINGLETHREAD_DIALOG添加一个按钮,ID为IDC_SLEEP_SIX_SECOND,标题为“延时6秒”,添加按钮的响应函数,代码如下:void CSingleThreadDlg::OnSleepSixSecond() { Sleep(6000); //延时6秒}编译并运行应用程序,单击“延时6秒”按钮,你就会发现在这6秒期间程序就象“死机”一样,不在响应其它消息。为了更好地处理这种耗时的操作,我们有必要学习——多线程编程。二、多线程概述 进程和线程都是操作系统的概念 阅读全文
posted @ 2011-03-22 00:23 °ι 、曲 终 阅读(253) 评论(0) 推荐(0)
摘要: CRect GameRect;//保存游戏窗口矩形用 if (theApp.m_hGameHand !=NULL)//这个需要自己去保存游戏窗口句柄我保存在theApp.m_hGameHand 里 { ::ShowWindow(theApp.m_hGameHand,SW_SHOW);//把游戏显示出来 ::PostMessage(theApp.m_hGameHand,WM_SYSCOMMAND,SC_RESTORE,0);//防止游戏最小化, Sleep(200);//防止游戏窗口未弹出 //让游戏窗口置顶 ::SetWindowPos(theApp.m_hGameHand,HWND_TOPM 阅读全文
posted @ 2011-03-20 14:38 °ι 、曲 终 阅读(610) 评论(0) 推荐(0)
摘要: void CMy7877Dlg::OnOK() {// TODO: Add extra validation hereUpdateData(TRUE);CInternetSession session("HttpClient"); url = m_a; CHttpFile* pfile = (CHttpFile *)session.OpenURL(url); DWORD dwStatusCode; pfile -> QueryInfoStatusCode(dwStatusCode); if(dwStatusCode == HTTP_STATUS_OK) { CStri 阅读全文
posted @ 2011-03-04 10:53 °ι 、曲 终 阅读(308) 评论(0) 推荐(0)
摘要: 一. 本软件完全出于个人兴趣爱好,由本人在业余时间开发,在非简单游场合下,对任何使用者不收取任何费用.是一款安全,绿色,可靠的软件产品.二. 利用本软件所做出的任何软件作品,和本人无关.三. 本软件绝对不针对任何一款游戏或者游戏开发商,如果有人利用本软件开发非法游戏辅助,本人将保留追究其民事以及刑事责任的权利.四. 因使用本软件而引致的任何意外、疏忽、合约毁坏、诽谤、版权或知识产权侵犯及其所造成的任何损失,本人概不负责,亦概不承担任何民事或刑事法律责任。五. 本软件的功能描述以按键精灵这款软件的语法来描述,但与按键精灵官方无任何关系.六. 当你第一次开始使用本人所提供的任何软件及资源的那一刻起 阅读全文
posted @ 2011-03-02 11:55 °ι 、曲 终 阅读(458) 评论(0) 推荐(0)
摘要: 有关托盘编程的基础知识呢,也就上面这些了。下面呢,我们就进入具体的实战演练阶段,举几个托盘编程的例子瞧瞧,加深理解。  1、将程序最小化到系统托盘区的函数toTray()。void CTimeWakeDlg::toTray(){NOTIFYICONDATA nid;nid.cbSize=(DWORD)sizeof(NOTIFYICONDATA);nid.hWnd=this->m_hWnd;nid.uID=IDR_MAINFRAME;nid.uFlags=NIF_ICON|NIF_MESSAGE|NIF_TIP ;nid.uCallbackMessage=WM_SHOWTASK;//自定义 阅读全文
posted @ 2011-02-20 16:03 °ι 、曲 终 阅读(374) 评论(0) 推荐(0)
摘要: SetWindowLong(Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) or WS_EX_TRANSPARENT or WS_EX_LAYERED ); WS_EX_ACCEPTFILES = 0x00000010 指明了一个已创建视窗具有拖拽文件功能 WS_EX_APPWINDOW = 0x00040000 强制一个可见的顶级视窗到工具栏上 WS_EX_CLIENTEDGE = 0x00000200 使一个视窗具有凹陷边框 WS_EX_COMPOSITED = 0x02000000 Windows XP:将一个窗体的所有子窗 阅读全文
posted @ 2011-02-20 16:02 °ι 、曲 终 阅读(338) 评论(0) 推荐(0)
摘要: HWND是Windows系统中对所有窗口的一种标识,即窗口句柄。这是一个SDK概念。 CWnd是MFC类库中所有窗口类的基类。微软在MFC中将所有窗口的通用操作都封装到了这个类中,如:ShowWindow等等,同时它也封装了窗口句柄即m_hWnd成员。由HWnd得到CWnd*:CWnd wnd;HWnd hWnd;wnd.Attach(hWnd);通常一个窗口资源已经和一个CWnd类的对象关联起来的,由于一般来说这个类是自己创建的,所以自然知道怎么得到指向这个类的指针。如果没有就创建一个CWnd对象,将这个对象与窗口资源的hWnd句柄关联起来。(如上边的语句)。如果用static CWnd* 阅读全文
posted @ 2011-02-20 16:00 °ι 、曲 终 阅读(522) 评论(0) 推荐(0)
摘要: 一般地,可以使用CoCreateInstance来调用COM组件。但对于实现了IDispatch接口的COM组件,还有更容易的方法——用VC++自动生成接口的COleDispatchDriver包装类来调用COM组件。举例说明:在VC++中执行脚本语句,比如VBScript语句。系统提供了一个控件:C:\WINDOWS\system32\msscript.ocx,它提供了一个叫做IScriptControl的接口,通过它,我们就可以执行脚本语句了。1.用VC++自动创建包装类用VC++建立一个支持MFC的工程,添加一个类,选择“类型库中的MFC类&rdquo 阅读全文
posted @ 2011-02-19 21:44 °ι 、曲 终 阅读(2677) 评论(0) 推荐(0)
摘要: COM库函数 -------------------------------- 利用COM库函数使用代码组件的方法是本文介绍的三种方法中实现起来最麻烦和困难的方法。它要求开发人员必须具有对COM原理的深入理解。该方法实现步骤如下: 1. 首先添加COM初始和终止代码。在应用程序类的初始化实例函数InitInstance()中添加如下代码: CoInitialize(NULL); …… CoUnInitialize(); 上述语句运行在MFC框架/非MFC框架中,但由于本文程序使用MFC框架,所以也可以利用AfxOleInit()函数对其进行初始化。 2. 然后用#i 阅读全文
posted @ 2011-02-19 21:41 °ι 、曲 终 阅读(775) 评论(0) 推荐(0)
摘要: 在App::InitInstance()中加入把m_pszAppName换成你程序的GUIDe值即可。一般在stdafx.h有,例如 #if !defined(AFX_STDAFX_H__A5EA48F2_0257_4B04_B771_A2E1635741D8__INCLUDED_) #define AFX_STDAFX_H__A5EA48F2_0257_4B04_B771_A2E1635741D8__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 则GUID为:A5EA48F2_0257_4 阅读全文
posted @ 2011-02-16 16:41 °ι 、曲 终 阅读(799) 评论(0) 推荐(0)
上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 28 下一页