- 博客(82)
- 资源 (94)
- 收藏
- 关注
转载 win32中调用Atl控件
win32中调用Atl控件 问了多位c++程序员,win32群里的朋友如何在Win32中调用Atl控件,也游了开源网站一回,均无结果,按照微软msdn给出的步骤也没有搞定。搜索引擎找了无数篇文件,终于找到可行的方法,故记录于此。第一步、创建Win32 Project项目,Application Settings窗口中勾选“ATL”第二步、添加引用?
2013-12-04 23:23:39
2796
转载 换肤对话框的选中框。
1.先准备列表用的xml 2.定制memframeimage 相关类。class CBkMemoryFrameImage : public CBkMemoryImage{ BKOBJ_DECLARE_CLASS_NAME(CBkMemoryFrameImage, "memframeimage") CBkMemoryFrameIm
2011-10-25 21:06:10
2386
转载 带箭头的listbox
#include "stdafx.h"#include "FinancialListBox.h"#include #define SCROLL_BTN_HEIGHT 20#define SCROLL_BTN_WIDTH 134#define SCROLL_BT
2011-09-28 22:21:45
2880
转载 分割网址上附带的参数
1. CString strAll; strAll = "dialogWidth=600;dialogHeight=400;dialogLeft=100;dialogTop=100;maxable=1"; vector vecPara; SplitString(vec
2011-09-27 21:01:17
2288
转载 设置tab的格式
客户要求,tab要做成标准的样式。1.首先,把tab做成2灰1白的三张连接的图片。2.对xml中的tabctrl设置要仔细,它的宽度和高度 更要注意的是tabskin,tabskin的宽度和高度。
2011-09-27 15:18:49
2649
原创 Rijndaels的使用
高级加密标准(Advanced Encryption Standard,AES),在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。 1.加密的调用方法bool CGlo
2011-09-19 09:21:42
4060
原创 事件对象。
在用多线程编程时,往往会要求某线程执行完毕以后,再执行其他线程。或者要求对公共资源进行保护。这时我们的选择还是很多的:关键代码段(CriticalSection)、互斥体(mutex)、事件。你可以使用MFC封装的CEvent或者使用Windows API CreateEvent
2011-09-02 13:20:47
2065
原创 扩展CEdit实现文件的拖动。
很早之前,写测试的例子的时候,会把路径写死,现在感觉真傻。 现在我最起码能想到3中方法。 1.CEdit GetWindowText(手动拷贝路径) 2.SHBrowseForFolder(让用户浏览) 3.支持文件拖动(用
2011-08-31 16:17:10
2417
原创 我想写个截图程序
手把手VC截图小工具,附源码一直都想写个截图程序,觉得蛮有意思的。看到网上这位兄弟的思路蛮清晰的,就自己跟着做下,并记录了流程,做个备份。1.首先是构建个基于对话框的程序。在OnInitDialog中注册热键,并隐藏当前对话框。在资源里把对话框设为无边框。
2011-08-14 21:18:40
3988
原创 用map是您的程序更清晰!
当您遇到一大堆用数字串对应的规则时,记这些字符串有时会让人很头痛。没关系,用 枚举+map。1.定义一些枚举。enum UpdateKind{ enCommenFile = 1, enCom, // enDelCommenFile,//
2011-08-13 22:11:24
2307
原创 异常牛X的Policy
policy是规定好的 规章制度之类的一般是没有疑问要按照执行的 类似政府策略 或者公司的故障守则,strategy有点类似于计策 比如说我想开办一个公司的经营策略 营销策略之类的。今天我们讨论的是loki库中的policy,和设计模式中的strategy是要区别开来的。
2011-08-07 22:26:20
2199
原创 两个对象之间很好的交互方法!
类或对象之间的建立联系的方法很多:如(1)用组合的方式,一个类做为另一个类的成员变量。(2)两个类都作为基类的成员,通过基类调用另一个类。(3)想办法捞到另一个类的句柄,给另一个类发消息。(4)还有,受人诟病的 全局变量也是一种方式呀。我们今天要 讨论的是通过一个 中间类 来实现
2011-08-07 14:41:37
2526
原创 扩展金山提示框,使之带颜色(二)
动态提示框最好能有三个功能:1.动态地改变大小 2.支持多种颜色 3.能有个确定按钮1.用xml给提示框来个布局。 %str1%
2011-08-06 21:29:32
2398
原创 创建桌面快捷方式
BOOL CreateDesktopShotCut( CString strName,//在桌面显示的名称 CString strSourcePath)//文件绝对路径名称{ if(FAILED(CoInitialize(NULL))) return F
2011-08-03 21:26:30
2096
原创 扩展金山提示框,使之带颜色
1.提示过多时,有时需要颜色,便于用户查看。2.调查发现CBkRichText有对颜色的设置,在此可重用。 BOOL SetRichText(UINT uItemID, LPCSTR lpszXml) { T* pT = static_c
2011-08-01 15:36:58
2322
原创 请问:金山卫士这个等待的效果怎么做出来的?
1.首先,要定义计时器 XX.h void OnTimer(UINT_PTR nIDEvent);...BEGIN_MSG_MAP_EX(CUpdateListDlg) MSG_WM_TIMER(OnTimer)END_MSG_MAP()2.
2011-07-29 17:23:36
3006
原创 loki factory的使用 例二
1.参照例一配置// Shape.h#ifndef Shape_H_INCLUDED_#define Shape_H_INCLUDED_#include #include "loki/Singleton.h"#include "loki/Factory.h"usi
2011-07-27 20:45:42
2676
1
原创 loki factory的使用
1.Loki的下载地址 http://sourceforge.net/projects/loki-lib/2.把loki库考到自己的工程下3.引入详细代码:#include #include #include "loki/Factory.h"#include "loki/S
2011-07-27 20:29:17
3032
原创 Loki 单键的使用
1.Loki的下载地址 http://sourceforge.net/projects/loki-lib/2.把loki库考到自己的工程下3.引入#include "loki/Singleton.h"using namespace Loki;4.定义单键typedef Sin
2011-07-26 20:43:43
2263
原创 编程宣言
重剑无锋,大巧不工常有人询问,编程需要天赋吗?啊,任何事情走往极致,都需要天赋。任何一个软件产品的极致成功,都需要创意天赋、编程天赋、管理天赋、行销天赋……。然而,只需用心模仿,再加一点匠心独具,任何人都能够把编程路走得稳当顺遂。能读千赋则善赋,能观千剑则晓剑,巧者不过习者之门也
2011-07-26 19:34:45
1094
原创 对话框居中
CRect rc; CRect thisRect; GetWindowRect(&thisRect); SystemParametersInfo(SPI_GETWORKAREA,0,&rc,0); m_rcClient.left = ((rc.Wid
2011-07-25 09:13:14
390
原创 CreateEvent Function
点击打开链接#include "stdafx.h"#include #include #define THREADCOUNT 4 HANDLE ghWriteEvent; HANDLE ghThreads[THREADCOUNT];DWORD WINAPI
2011-07-20 22:46:05
415
转载 CopyFile System32 SysWoW64
总结一下:因为我们的程序是 32-Bit 的,当它调用 CopyFile(...) 和 access(...) 函数时,传给他们的参数里有 System32的路径,就会被 转向到 SysWoW64 目录下。
2011-07-06 08:55:04
1269
原创 获取程序运行是路径
<br />获取程序运行是路径<br />GetCurrRunPath(){ TCHAR szPath[MAX_PATH]; memset(szPath, 0x00, sizeof(szPath)); GetModuleFileName(NULL, szPath, sizeof(szPath)); CString strDir = szPath; int nPos = strDir.ReverseFind('//'); strDir = strDir.Mid(0, nPos)
2011-05-23 09:28:00
565
原创 两种方法点击客户区,移动对话框
<br />1.<br />void CMoveDlg::OnLButtonDown(UINT nFlags, CPoint point){ // TODO: 在此添加消息处理程序代码和/或调用默认值 PostMessage(WM_NCLBUTTONDOWN, HTCAPTION, MAKELPARAM(point.x,point.y)); CDialog::OnLButtonDown(nFlags, point);}<br />2.<br />LRESULT CMoveDlg::OnN
2011-05-03 23:18:00
619
转载 IT英雄
<br />2000年4月14日,在美国威斯康星州密尔沃基的一家汽车旅馆里,人们发现了一具年轻人的尸体,检查得知这个人的死因是酗酒、饮酒过量导致的死亡。死者被发现的时候,手中还握着一个空酒瓶,房间中还有五个空酒瓶。这样一个酒徒的死也许在平时只是地方小报上的一条不起眼的新闻,但这个人的死却在互联网上掀起了轩然大波。无数人在网上发表评论与文章,纪念他的离开,寄托人们的哀思,因为他不是一个普通人,他叫菲利普·卡兹(Philip Katz),几乎全世界的每一台个人电脑上都有用他创造的压缩算法生成的文档,这种文档的后
2011-05-02 10:51:00
670
原创 设置windows消息钩子
<br />#include "stdafx.h"#include "wpkey.h"#include <atlbase.h>#include <oleacc.h>#include <winuser.h>#ifdef _DEBUG#define new DEBUG_NEW#undef THIS_FILEstatic char THIS_FILE[] = __FILE__;#endifSHELLEXECUTEINFO sec;HHOOK hook;
2011-04-28 22:27:00
629
原创 CMemDC 源码
//////////////////////////////////////////////////// CMemDC - memory DC//// Author: Keith Rule// Email: keithr@europa.com// Copyright 1996-1999, Keith Rule//// You may freely use or modify this code provided this// Copyright is included in
2011-04-28 22:11:00
860
原创 MD5 VC实现
<br />md5.h <br />#ifndef MD5_H#define MD5_H#include <string>#include <fstream>/* Type define */typedef unsigned char byte;typedef unsigned int uint32;using std::string;using std::ifstream;/* MD5 declaration. */class MD5 {publ
2011-04-28 18:00:00
594
原创 互斥体单实例
<br />BOOL CMutexApp::InitInstance(){ ... m_handMutex = CreateMutex(NULL, TRUE, _T("互斥体单实例")); if (m_handMutex) { if (ERROR_ALREADY_EXISTS == GetLastError()) { AfxMessageBox(_T("实例已经运行!")); ReleaseMutex(m_handMutex); return FAL
2011-04-28 10:46:00
565
原创 获取Exe所在文件夹
<br />获取Exe所在文件夹<br /> TCHAR szPath[MAX_PATH]; memset(szPath, 0x00, sizeof(szPath)); GetModuleFileName(NULL, szPath, sizeof(szPath)); CString sPath = szPath; int nPos = sPath.ReverseFind('//'); sPath = sPath.Mid(0, nPos);
2011-04-27 12:50:00
518
原创 通过拖动对话框的任何地方来拖动对话框
<br />LRESULT CXXXDlg::OnNcHitTest(CPoint point){ // TODO: 在此添加消息处理程序代码和/或调用默认值 ScreenToClient(&point); CRect rc; GetClientRect(&rc); if(rc.PtInRect(point)) { return HTCAPTION; } return CDialog::OnNcHitTest(point);}
2011-04-26 16:01:00
564
原创 状态栏上加时间
<br />void CMainFrame::SetStatusBarTime(){ CString strTime = CTime::GetCurrentTime().Format("%Y:%m:%d %H:%M:%S"); CClientDC dc(this); CSize sz = dc.GetTextExtent(strTime); int nIndex = 0; nIndex = m_wndStatusBar.CommandToIndex(IDS_TIMER); m_
2011-04-21 17:56:00
381
原创 发消息点击按钮
<br />void CTestClickDlg::OnBtnClk() { // TODO: Add your control notification handler code here MessageBox("我是被发消息达到点击效果的");}void CTestClickDlg::OnBtnMyclk() { // TODO: Add your control notification handler code here SendMessage(WM_COMMA
2011-04-21 17:48:00
527
原创 CHoverButton 类
<br /> HoverButton.h<br />#if !defined(AFX_HOVERBUTTON_H__16C6D980_BD45_11D3_BDA3_00104B133581__INCLUDED_)#define AFX_HOVERBUTTON_H__16C6D980_BD45_11D3_BDA3_00104B133581__INCLUDED_#if _MSC_VER > 1000#pragma once#endif // _MSC_VER > 1000// Hover
2011-04-21 17:30:00
139
原创 vc 右下角弹出提示对话框
void XXXX::OnTimer(UINT nIDEvent) { // TODO: Add your message handler code here and/or call default if (nIDEvent == enTimerTIDlgAutoHide) { KillTimer(enTimerTIDlgAutoHide); this->ShowWindow(SW_HIDE); //SendMessage(WM_CLOSE); } if (nIDE
2011-04-21 15:20:00
2599
qqloginshadow.zip
2022-01-01
DownTool.rar
2011-05-04
VC后台服务+sql server.rar
2011-03-12
RMComment.rar
2011-03-10
vim用户手册中文版71.pdf
2011-01-18
VCXMl_yyc.rar
2010-09-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人