- 博客(32)
- 资源 (6)
- 问答 (1)
- 收藏
- 关注
转载 使用Win32 API做个系统托盘图标
系统托盘在我们使用的程序中很普遍,下面我们来看一个很不错的例子,使用Win32 API实现,对理解系统托盘有些帮助。转载随意,但请带上本文地址:http://www.nowamagic.net/librarys/veda/detail/227#include #define IDR_PAUSE 12#define IDR_S
2015-05-31 21:13:30 862
翻译 api注册表操作函数
注册表的操作,API为我们提供了大约25个函数。他提供了对注册表的读取、写入、删除,以及打开注册表及键值时所有函数,并且可以达到对注册表的备份,连接和对远端注册表进行查看等等。注册表对整个系统十分重要,你在进行操作时,一定要先考虑清楚。这些函数有: RegCloseKeyRegConnectRegistryRegCreateKeyRegCreateKeyEx RegDelet
2015-05-31 20:09:24 757
转载 git revert 用法 和 git revert 和 git reset的区别
git revert 用法git revert 撤销 某次操作,此次操作之前和之后的commit和history都会保留,并且把这次撤销作为一次最新的提交 * git revert HEAD 撤销前一次 commit * git revert HEAD^ 撤销前前一次 commit
2015-05-20 10:52:18 1015
原创 C++ 用new 动态创建多维数组
C++ 用new 动态创建多维数组我们知道char *a=new char[10];可以创建一个长度为10的数组。当把定值10换为一个变量时,我们的程序也没有任何问题,这时可成了名副其实的动态创建数组,如:int n=10;char *a=new char[n];但我们怎么动态创建一个多维数组呢?一定有人写出来这样的代码://错误代码char **a=new
2015-05-20 09:23:23 1046
原创 ini文件的读取操作
ini文件的读取操作通过这五个函数可以读出 .ini文件的int型value,string型value,所有的section,每个section的所有key字段,struct型value。返回每个section的所有key字段时,返回值为写入的字符数,缓冲区内以'\0'为间隔符。[section]key1=intkey2=stringkey3=struct/
2015-05-19 16:58:48 1053
转载 Duilib编译成静态库
Duilib编译成静态库有很多人不知道如何编译成静态库,其实很简单的。首先在vs中设置duilib项目。如图:配置类型改为静态库。第二步修改UIlib.h头文件上面的宏。如图: 第三步在这个头文件下面添加内容:#pragma comment(lib,"oledlg.lib")#pragma comment(lib,"winmm.lib")#p
2015-05-17 22:08:08 1274
转载 利用.pbk来实现ADSL开机自动拨号
利用.pbk来实现ADSL开机自动拨号 当你新建拨号连接或者VPN连接之后在你的电脑里会创建一个.pbk的文件这个.pbk的文件可以说是一个集合,将你电脑的所有连接都保存在一起。同时你还可以将此连接复制起来传给其他人。系统默认的.pbk的路径为:%appdata%\Microsoft\Network\Connections\Pbk\ras
2015-05-17 20:39:45 1533
转载 在Github和Git上fork之简单指南
以我的经验来看,刚接触Git和GitHub时,最困扰的一件事情就是尝试解决下面的问题:在Git和GitHub上,我能做什么?Git教程往往不会解决这个问题,因为它集中篇幅来教你Git命令和概念,并且不认为你会使用GitHub。GitHub帮助教程一定程度上弥补了这一缺陷,但是它每篇文章的关注点都较为狭隘,而且没有提供关于"Git vs GitHub"问题的概念性概述。如果你是习惯于
2015-05-17 18:52:31 697
原创 五种开源协议(GPL,LGPL,BSD,MIT,Apache)
五种开源协议(GPL,LGPL,BSD,MIT,Apache)什么是许可协议?什么是许可,当你为你的产品签发许可,你是在出让自己的权利,不过,你仍然拥有版权和专利(如果申请了的话),许可的目的是,向使用你产品的人提供 一定的权限。不管产品是免费向公众分发,还是出售,制定一份许可协议非常有用,否则,对于前者,你相当于放弃了自己所有的权利,任何人都没有义务表明你的原始作
2015-05-17 17:17:35 765
转载 Git教程--多人协作
多人协作 - 廖雪峰的官方网站http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013760174128707b935b0be6fc4fc6ace66c4f15618f8d000
2015-05-17 16:53:22 445
转载 Git教程--Feature分支
Feature分支 - 廖雪峰的官方网站http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001376026233004c47f22a16d1f4fa289ce45f14bbc8f11000
2015-05-17 16:52:41 796
转载 Git教程--Bug分支
Bug分支 - 廖雪峰的官方网站http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137602359178794d966923e5c4134bc8bf98dfb03aea3000
2015-05-17 16:52:01 446
原创 git merge和rebase的区别
[Git] git merge和rebase的区别git merge 会生成一个新得合并节点,而rebase不会比如:123 D---E test /A---B---C---F master使用merge合并, 为分支合并自动
2015-05-16 22:39:01 690
转载 windows下git bash显示中文
windows下git bash显示中文 即git安装路径1、C:\Program Files\Git\etc\git-completion.bash:直接添加 alias ls='ls --show-control-chars --color=auto'说明:使得在 Git Bash 中输入 ls 命令,可以正常显示中文文件名。2、C:\Program Fi
2015-05-16 22:33:19 766
转载 Git入门教程(适合新手)
http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000很不错的 廖学峰教程
2015-05-15 19:29:14 549
转载 git 删除远程分支
git 删除远程分支一不小心把本地的临时分支push到server上去了,想要删除。一开始用git branch -r -d origin/branch-name不成功,发现只是删除的本地对该远程分支的track,正确的方法应该是这样:git push origin :branch-name冒号前面的空格不能少,原理是把一个空分支push到s
2015-05-15 17:50:52 1022
转载 C/C++不同文件夹下包含头文件的方法及#include的使用
C/C++不同文件夹下包含头文件的方法及#include的使用 本文主要介绍了如何不同文件夹下使用预处理器指示符#include。假设我们有如下一个工程,其中包含了几个源代码文件和头文件。其中main.c是主源代码文件,里面包含main函数。在base中包含:func3.h,func3.c,文件夹main和文件夹fun
2015-05-14 11:17:10 636
转载 C++中模板使用详解
C++中模板使用详解转自:http://www.360doc.com/content/09/0403/17/799_3011262.shtml1. 模板的概念。我们已经学过重载(Overloading),对重载函数而言,C++的检查机制能通过函数参数的不同及所属类的不同。正确的调用重载函数。例如,为求两个数的最大值,我们定义MAX()函数需要对不同的数据类型分别定义不同重载(O
2015-05-14 10:04:20 369
转载 C++中 模板Template的使用
C++中 模板Template的使用 1、在c++Template中很多地方都用到了typename与class这两个关键字,而且好像可以替换,是不是这两个关键字完全一样呢?答:class用于定义类,在模板引入c++后,最初定义模板的方法为:template,这里class关键字表明T是一个类型,后来为了避免class在这两个地
2015-05-14 10:01:42 556
转载 从int 3探索Windows应用程序调试原理
【系统篇】从int 3探索Windows应用程序调试原理探索调试器下断点的原理 在Windows上做开发的程序猿们都知道,x86架构处理器有一条特殊的指令——int 3,也就是机器码0xCC,用于调试所用,当程序执行到int 3的时候会中断到调试器,如果程序不处于调试状态则会弹出一个错误信息,之后程序就结束。使用VC开发程序时,在Debug版本的程序中,编译器会向函数栈帧中填充大量的
2015-05-14 09:45:55 2211
转载 Windows内存管理API的体系结构
Windows内存管理API的体系结构首先上两张图,分别阐述:1.WindowsAPI与CRT(C运行时)及C++标准库的关系2.Windows内存管理API的体系结构 图1:WindowsAPI、CRT及标准C++库之间的关系(转自:http://www.codeproject.com/Articles/22642/What-Every-Computer-Progra
2015-05-13 11:00:53 733
原创 线程安全使用相关注意事项
线程安全使用相关注意事项线程创建遵循下面规律! 1、如果线程函数中只调用Win32 API,就放心用CreateThread; 2、如果要用到C Runtime库,那么就要使用_beginthreadex,并且需要在编译环境中选择UseMultiThread Lib/DLL; 3、MFC程序中使用AfxBeginThread。坚决不要使用_beg
2015-05-12 18:10:32 614
转载 C++学习之多态及重载(overload),覆盖(override),隐藏(hide)的区别
C++学习之多态及重载(overload),覆盖(override),隐藏(hide)的区别C++编程语言是一款应用广泛,支持多种程序设计的计算机编程语言。我们今天就会为大家详细介绍其中C++多态性的一些基本知识,以方便大家在学习过程中对此能够有一个充分的掌握。 多态性可以简单地概括为“一个接口,多种方法”,程序在运行时才决定调用的函数,它是面向对象编程领域的核心
2015-05-12 10:51:53 727
转载 线程的终止_beginthread和_endthread或者CloseHandle()
线程的终止_beginthread和_endthread或者CloseHandle() (2014-03-27 19:07:07)转载▼线程内部细节1.CreateThread 和 _beginthreadex 区别: CreateThread是系统API,_beginthreadex是CRT(C Run Time Libr
2015-05-12 10:23:43 4275
转载 创建线程后马上CloseHandle(threadhandle)起什么作用
创建线程后马上CloseHandle(threadhandle)起什么作用 HANDLE threadhandle = CreateThread(NULL, 0, RecvThreadProc, NULL, NULL, NULL); CloseHandle(threadhandle); 不明白为什么创建线程后,要马上把线程的句柄关闭,这样做的目
2015-05-12 10:09:10 700
转载 C++ 虚函数表解析
C++ 虚函数表解析 陈皓http://blog.csdn.net/haoel 前言 C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,R
2015-05-11 21:37:10 377
转载 VC根据进程名获得进程ID 和 VC获得系统特殊文件夹 SHGetSpecialFolderPath 和 VC写入注册表,使程序开机启动
DWORD GetProcessIDFromName(char *name) { HANDLE snapshot; PROCESSENTRY32 processinfo; processinfo.dwSize = sizeof(processinfo); snapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
2015-05-11 09:46:38 798
转载 VC中获取窗口句柄的各种方法
AfxGetMainWndAfxGetMainWnd获取自身窗口句柄HWND hWnd = AfxGetMainWnd()->m_hWnd;GetTopWindow函数功能:该函数检查与特定父窗口相联的子窗口z序(Z序:垂直屏幕的方向,即叠放次序),并返回在z序顶部的子窗口的句柄。函数原型:HWND GetTopWindow(HWND hWnd);参数: hW
2015-05-10 10:36:50 659
原创 根据进程查找窗口
#include //根据进程名获取进程IDBOOL GetPidByProcessName(TCHAR *pProcess, DWORD*dwPid) { HANDLE hSnapshot; PROCESSENTRY32 lppe; //创建系统快照 hSnapshot = ::CreateToolhelp32Snapshot(
2015-05-10 10:30:39 2377
转载 MFC CString 和int相互转化
CString str = _T("123");int i = _ttoi(str);===============int i = 123;CString str ;str.Format(_T("%d"), i);
2015-05-08 11:36:56 623
转载 【Windows核心编程学习笔记】远程注入DLL
远程注入DLL一、概述为了隐藏自身的进程信息,我们希望将进程作为一个合法进程的线程运行。由于系统进程间不允许直接操作资源,因而我们需要在合法进程内部创建一个线程,为其指定要执行的代码。一种简单的方式是令远程线程载入一个我们编写的DLL,通过DllMain()函数执行我们需要的代码。基本思路是将LoadLibrary()函数作为一个线程函数来调用:CreateRemoteThread()
2015-05-08 09:41:45 900
转载 DLL入口点函数DllMain
每个DLL都可以有一个入口点函数DllMain,系统会在不同的时刻调用此函数。以下是DllMain的一般形式:BOOL WINAPI DllMain( HINSTANCE hinstDLL, // handle to DLL module DWORD fdwReason, // reason for calling function LPVOID lpRese
2015-05-08 08:26:56 1128
gtest_2016.4.9源码和VS2015,2005编译的lib.7z
2016-04-09
XueTr.zip与冰刃是一样的强大
2010-12-24
360扣扣保镖(QQ保镖)
2010-12-24
新手学习c++,使用vs的疑惑
2013-07-23
TA创建的收藏夹 TA关注的收藏夹
TA关注的人