C++/QT/Boost/MFC
文章平均质量分 74
动起手来实现白日梦
有兴即有趣!
展开
-
写下第一篇关于wxWidgets的文章,为什么我选择了wxWidgets!
看到好多的人都在写BLOG,我也与时俱进,呵呵!开始学习吧!标记一下学习进度!看到网上好多的人为UI界面这部分郁闷,在MFC下用BCG也是不错的选择,在VC2008(SP1)中MS已经加入了BCG,突显的风格就是OFFICE2007 ,又看到用SKIN++的人也不少,哪我为什么要选择用wxWidgets呢?wxWidgets好象不是UI的解决方案!它是一个平台!为什么呢? 带着N多的问号,原创 2009-08-13 11:19:00 · 1579 阅读 · 1 评论 -
防软件多开的几种方法及实现代码!
1,FindWindow防多开原创 2010-12-09 14:41:00 · 2816 阅读 · 2 评论 -
转:DLL注入大法—之CreateRemoteThread法
要实现线程的远程注入必须使用Windows提供的CreateRemoteThread函数来创建一个远程线程该函数的原型如下:转载 2010-12-21 15:39:00 · 7318 阅读 · 0 评论 -
HOOK钩子详细介绍
HOOK钩子详细介绍SetWindowsHookExHOOK钩子详细介绍 基本概念 钩子(Hook),是Windows消息处理机制的一个平台,应用程序可以在上面设置子程以监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的。当消息到达后,在目标窗口处理函数之前处理它。钩子机制允许应用程序截获处理window消息或特定事件。转载 2010-12-21 14:55:00 · 774 阅读 · 0 评论 -
转:DLL注入大法—之HOOK注入
我原来写过有关HOOK的介绍,如果你看过了或者是以前写过HOOK程序,那么你已经会这种DLL注入了。它其它就是为系统或某个线程安装一个钩子。这里要说的是,如果是全局钩子,那么你的DLL将会在进程调用时载入到任意一个调用的进程的地址空间中,这样是相当浪费资源的。因此我在下载的演示中就只对某一个指定的线程安装线程钩子。转载 2010-12-21 15:40:00 · 1714 阅读 · 0 评论 -
转:DLL注入大法—之利用特洛伊DLL进行注入
这种方法的原理就是由自己写一个与原有进程调用的DLL具有相同接口函数的DLL,再用我们的DLL替换原有的DLL。在替换的过程中,由我们自己编写感兴趣的函数替换原有函数,而对其它不感兴趣的函数,则以函数转发的形式调用原有DLL中的函数。这里面有个前提,就是你在编写DLL时你必须知道原有DLL中的函数都有哪些,以免导至其它进程调用DLL时找不到相应的API函数,特别是在替换系统DLL文件时更要小心。转载 2010-12-21 15:42:00 · 1682 阅读 · 0 评论 -
定义一个宏,输入三个数,返回最大值,真是浪费时间!
<br />#include <iostream>using namespace std;//输入两个数返回一个最大值#define MAX2(A,B) ((A) >= (B)?(A):(B))//输入三个数返回一个最大值#define MAX3(A,B,C) ((A)>(B)&&(A)>(C)?(A):((B)>(C)?(B):(C)))int main(){ int a=0; cout<<MAX2(1,3)<<endl; cout<<MA原创 2010-11-02 15:11:00 · 4778 阅读 · 3 评论 -
[转]VC最小化托盘图标显示!!
[转]VC最小化托盘图标显示!!转载 2010-11-23 22:50:00 · 1588 阅读 · 0 评论 -
[转]CString、wchar和char相互转换
CString、wchar和char相互转换转载 2010-11-23 23:07:00 · 26222 阅读 · 1 评论 -
关于C语言逆序字符串的相关代码!
解决问题的时间首先想到的是搜索引擎,并不是大脑。现在的习惯都变完了!!原创 2011-04-25 09:35:00 · 1156 阅读 · 0 评论 -
VC编辑框(EDIT)的自动换行、自动滚屏 、自动清空
在自动换行设置的时候,要在EDIT控件的属性中选中"multiline"的属性和Auto_HScroll、Vertical scroll。 经过多次测试,总结出VC编辑框(EDIT)的自动换行与自动滚屏的方法。 方法一: (当EDIT映射到一CString时)转载 2011-09-05 10:45:16 · 1498 阅读 · 0 评论 -
动态设置Edit控件的背景及字体颜色
1.新建一个基于对话框的应用程序,在对话框上添加一个Edit控件和三个Radio控件2.修改Radio控件的ID分别为:IDC_RAD_RED、IDC_RAD_GREED、IDC_RAD_BLUE,名称对应修改为red、green、blue3.向对话框对应的类中添加如下成转载 2011-09-05 10:44:30 · 10183 阅读 · 1 评论 -
setsockopt设置socket状态 解决相关端口占用问题!
setsockopt设置socket状态1.closesocket(一般不会立即关闭而经历TIME_WAIT的过程)后想继续重用该socket:BOOL bReuseaddr=TRUE;setsockopt(s,SOL_SOCKET ,SO_REUSEADDR,(const char*)&bReuseaddr,sizeof(BOOL));2. 如果要已经处于连接状态的s转载 2012-07-25 10:35:38 · 5018 阅读 · 0 评论 -
智能指针auto_ptr
智能指针(auto_ptr) 这个名字听起来很酷是不是?其实auto_ptr 只是C++标准库提供的一个类模板,它与传统的new/delete控制内存相比有一定优势,但也有其局限。本文总结的8个问题足以涵盖auto_ptr的大部分内容。 1. auto_ptr是什么?auto_ptr 是C++标准库提供的类模板,auto_ptr对象通过初始化指向由new创建的动态内存,它是这块转载 2014-04-09 19:29:05 · 707 阅读 · 0 评论 -
va_start和va_end使用详解
va_start和va_end使用详解 本文主要介绍va_start和va_end的使用及原理。 在以前的一篇帖子Format Messagebox中曾使用到va_start和va_end这两个宏,但对它们也只是泛泛的了解。 介绍这两个宏之前先看一下C中传递函数的参数时的用法和原理: 1.在C中,当我们无法列出传递函数的所有实参的类型和数目时,可以用省略号转载 2015-05-20 09:20:04 · 815 阅读 · 0 评论 -
调用DLL动态库一些小结知识点!
1,生成dll文件工程,并复制dll及lib文件到调用的工程下在生成DLL时记着把DEF文件中加入函数名原创 2010-10-11 15:48:00 · 1004 阅读 · 1 评论 -
转ANSI编码转UTF8编码 实现代码
ANSI编码转UTF8编码 实现代码转载 2010-06-22 17:38:00 · 6054 阅读 · 0 评论 -
C++ 操作运算符优先级表
C++ 操作运算符优先级表转载 2010-07-28 14:53:00 · 621 阅读 · 0 评论 -
第一个wxWidgets Demo简单实现,及VC2008下的环境设置!
一个wxWidgets简单设置及实现!用于学习wxWidgets入门的实例! 建立一个WIN32项目空工程,接着设置一下该工程的VS2008开发环境,设置方法如下:一、中文环境的VS2008如下:设置项: C/C++/常规/附加包含目录设置内容: C:/wxWidgets-2.8.10/include;C:/wxWidgets-2.8.10/include/msvc原创 2009-08-14 14:13:00 · 4190 阅读 · 2 评论 -
多线程简单摘要!
在MFC里直接用AfxBeginThread就可以了啊。使用CWinThread*声明一个线程,然后定义一个线程函数,在要开启线程的地方使用AfxBeginThread这个线程函数就可以了~例如:CWinThread* pThreadTest;UINT _TestThread(LPVOID lparam){ HWND hDlg=FindWindow(NULL,TEXT("原创 2009-09-17 22:10:00 · 773 阅读 · 0 评论 -
关于组合键值、单键、鼠标消息等!
VK_A thru VK_Z are the same as ASCII A thru Z (0x41 - 0x5A)65 0X41 A66 0x42 B67 0x43 C68 0x44 D69 0x45 E 70 0x46 F71 0x47 G72 0x48 H73 0x49 I74 0x4A J75 0x4B K76原创 2009-10-12 19:29:00 · 1421 阅读 · 0 评论 -
关于EXCEL操作一些方法!
一: 利用BasicExcel类 com方式访问EXCELhttp://www.codeproject.com上搜,在其回复的消息内有一个MFC的示例,是已经修改过并处理过编码问题的。我测试一切正常!二: 利用CSpreadSheet类 ODBC方式访问EXCEL百度搜一下CSpreadSheet有示例! 建意用BasicExcel类使用很方便,大家都说好,特别是MFC的示例原创 2009-10-12 19:35:00 · 1843 阅读 · 1 评论 -
HP_UX top监控
top监控工具可以显示CPU占用率为前几位的进程,并提供CPU的实时活动情况 语法:top [-s time] [-d count] [-q] [-u] [-h] [-n number] [-f filename] -s time 设置屏幕刷新的延时,单位为秒,默认值5秒 -d count 设置屏幕刷新的次数,刷新显示完count次后退出 -q 如果经过nice授权,使用-q可以使top运行的更快转载 2010-02-05 11:25:00 · 995 阅读 · 0 评论 -
用rand()和srand()产生伪随机数的方法总结
用rand()和srand()产生伪随机数的方法总结标准库(被包含于中)提供两个帮助生成伪随机数的函数: 函数一:int rand(void);从srand (seed)中指定的seed开始,返回一个[seed, RAND_MAX(0x7fff))间的随机整数。函数二:void srand(unsigned seed);参数seed是rand()的种子,用来初始化rand()的起始值。可以认为转载 2010-05-17 10:03:00 · 1008 阅读 · 1 评论 -
Ctime时间类的相关用法
(一)获得当前日期和时间,并可以转化为 CStringCTime tm=CTime::GetCurrentTime(); CString str=tm.Format("%Y-%m-%d");或者SYSTEMTIME systemTime;::GetLocalTime(&systemTime);CTime cTimeNow(systemTime);// 还有一个GetSystem原创 2010-05-17 10:07:00 · 15781 阅读 · 2 评论 -
VC中ComboBox控件的使用
在CComboBox里有这个属性Drop List设之后即可使用:初始化变量:m_CtrlCombo.InsertString( 3, "管理112" );使用函数调用:((CComboBox*)GetDlgItem(IDC_COMBO1))->InsertString( 3, "管理112" ); CComboBox控件又称作组合框控件,其有三种形态可供选择,1.简单组合框(S转载 2010-05-16 21:04:00 · 832 阅读 · 0 评论 -
在VC++中读写INI文件
在VC++中读写INI文件 在我们写的程序当中,总有一些配置信息需要保存下来,以便完成程序的功能,最简单的办法就是将这些信息写入INI文件中,程序初始化时再读入.具体应用如下: 一.将信息写入.INI文件中. 1.所用的WINAPI函数原型为: BOOL WritePrivateProfileString(LPCTSTR lpAppName,LPCTSTR lpKeyName,转载 2010-05-17 10:12:00 · 847 阅读 · 0 评论 -
Unicode UTF-8 Ansi 互转及MultiByteToWideChar和WideCharToMultiByte用法等编码相关
Unicode,到UTF-8。 qp::StringW Global::AnsiToUnicode(const char* buf){ int len = ::MultiByteToWideChar(CP_ACP, 0, buf, -1, NULL, 0); if (len == 0) return L""; std::vector unicode(转载 2010-05-18 20:53:00 · 18686 阅读 · 1 评论 -
文件操作相关
1,两种文件存取方式(输入,输出方式) 顺序存取 直接存取 2,数据的两种存放形式 文本文件 二进制文件 13.2文件指针 定义文件类型指针变量的一般形式: FILE *指针变量名; 例如: FILE *fp1,*fp2; 13.3打开文件 在使用文件之前,需打开文件.在C里使用fopen函数打开文件.格式为: fopen(文件名,文件使用方式); 此函数返回一个指向FILE类型的指针.如转载 2010-05-19 15:03:00 · 927 阅读 · 0 评论 -
通用对话框相关
VC中使用CFileDialog进行文件操作,一般来讲你不需要派生新的类,因为基类已经提供了常用的功能。而且在创建并等待对话框结束后你可以通过成员函数得到用户在对话框中的选择。 CFileDialog文件选择对话框的使用:首先构造一个对象并提供相应的参数,构造函数原型如下: CFileDialog::CFileDialog( BOOL bOpenFileDialog, LPCTSTR lpsz转载 2010-05-19 15:28:00 · 784 阅读 · 0 评论 -
VC画图不闪烁的方法(双缓冲技术)
在VC中画图不闪,可以使用内存画图,然后将图片拷贝到设备上,但结果是加快图像显示速度,但还是很闪,显示图形如何避免闪烁,如何提高显示效率,而且多数人认为MFC的绘图函数效率很低,总是想寻求其它的解决方案。MFC的绘图效率的确不高但也不差,而且它的绘图函数使用非常简单,只要使用方法得当,再加上一些技巧,用MFC可以得到效率很高的绘图程序。1、显示的图形为什么会闪烁?我们的绘图过程大多放在OnDr转载 2010-05-30 18:52:00 · 2426 阅读 · 0 评论 -
Getlasterror() 返回值 速查
〖0〗-操作成功完成。 〖1〗-功能错误。 〖2〗-系统找不到指定的文件。 〖3〗-系统找不到指定的路径。 〖4〗-系统无法打开文件。 〖5〗-拒绝访问。 〖6〗-句柄无效。 〖7〗-存储控制块被损坏。 〖8〗-存储空间不足,无法处理此命令。 〖9〗-存储控制块地址无效。 〖10〗-环境错误。 〖11〗-试图加载格式错误的程序。 〖12〗-访问码无效。 〖13〗-数据无效。 〖14〗-存储器不足,转载 2010-05-28 18:37:00 · 938 阅读 · 0 评论 -
g++编译时默认支持C++11的几个配置小方法
//第一种,直接包含在源程序文件中,如第一行代码所示#pragma GCC diagnostic error "-std=c++11"#include using namespace std;int main(int argc,char **argv){ cout<<"hello world!"<<endl; auto i=10; cout<<i<<endl; return 0原创 2016-02-21 16:55:36 · 10835 阅读 · 0 评论