自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(47)
  • 资源 (3)
  • 问答 (1)
  • 收藏
  • 关注

原创 QT 截屏

来自QT Example,在此备忘

2014-10-14 09:16:36 725

转载 c++ 类型转换

总结C++中的所有强制转换函数(const_cast,reinterpret_cast,static_cast,dynamic_cast)C 风格(C-style)强制转型如下:(T) expression // cast expression to be of type T函数风格(Function-style)强制转型使用这样的语法:T(expression) 

2014-09-26 16:05:25 481

原创 QT源码阅读--QObject

QObject 是QT类体系中唯一的基类,

2014-09-18 22:30:51 116

原创 QT SqLite3

SQLITE 是一个轻型的数据库系统,他不需要

2014-09-18 15:28:25 1620

原创 QT MVC 模式

QT提供Model-Based的4个控件,分别是List View,Tree View,

2014-09-16 18:24:02 2353

原创 QT 使用MySql

昨天开始了解mysql方面的知识,

2014-09-16 17:04:36 16738 2

原创 QT源码阅读 -- QTimer

#ifndef QTIMER_H#define QTIMER_H#ifndef QT_NO_QOBJECT#include // conceptual inheritance#include QT_BEGIN_HEADERQT_BEGIN_NAMESPACEQT_MODULE(Core)class Q_CORE_EXPORT QTimer : public QObje

2014-09-09 21:56:36 2118

原创 写一个在一个字符串(n)中寻找一个子串(m)第一个位置的函数

int Search(char* str,char* findstr){int lenstr = strlen(str);int lenfindstr = strlen(findstr);if (lenstr {return -1;}for (int i = 0; i {if (findstr[0] == str[i])//如果第一个字符匹配{f

2014-03-04 13:56:05 2352

原创 二维数组、指针数组、数组指针

int main(){int (*p)[4] ;int *q;int a[3][4] ={3,5,6,7,1,2,3,4,0,10,12,15};/************************************************************************///a[0] , a[1] , a[2] 分别表示第1行,第2行,第3行的

2014-03-04 13:54:12 549

原创 多线程同步

CRITICAL_SECITON --关键区InitializeCriticalSection()DeleteCriticalSection()EnterCriticalSection()LeaveCriticalSection()1)是windows里面的一个结构体。2)拥有线程所有权,所以不能用来进行线程同步,只能用来进行线程见的互斥。Event -- 事件Cr

2014-03-04 13:42:00 542

原创 Native wifi 编程

最近在做关于wifi的项目,其实windows底下为我们提供了很好的控制wifi的API,叫做Native WIFI,http://msdn.microsoft.com/en-us/library/ms706275(v=VS.85).aspx基本上的流程是:1)利用Wla

2011-09-30 11:32:27 216

原创 stdio.h(189) : error C2144: syntax error : 'int' should be preceded by ';'---解决办法

最近在做USB Detect的程式,在我include ddk的相关文件后,出现以下很多关于stdio.h的错误。原因是,无法连接vc自带的path路径。解决办法:include如下目录:C:\Program Files\Microsoft Visual Studio

2011-08-29 10:09:14 3935

原创 stdio.h(189) : error C2144: syntax error : 'int' should be preceded by ';'---解决办法

最近在做USB PORT detect的程式,发现在我include ddk的api目录和ddk的ddk目录后,无法正常编译,出现以下一大堆error:

2011-08-29 10:04:40 707

原创 C++ const 限定符

1)定义const对象const int bufSize = 512 ;定义bufSize 为常量并初始化为512.变量bufSize仍然是一个左值,但是现在这个左值是不能被修改的。任何修改bufSize的操作都会导致编译错误bufSize = 0; //error :attem

2011-07-15 17:19:46 487

原创 TBBUTTONINFO的使用。

MSDN 对TBBUTTONINFO 的解释为This structure contains or receives information for a specific button in a toolbar.  typedef struct { UINT cbSize; DWORD dwMask;

2011-06-29 15:58:00 3393

转载 BCG

BCGControlBar 的使用方法 安装 BCGControlBar 库到你的计算机: 解压缩 BCGControlBar.zip (比如,到 c:/bcg 目录中) 把 c:/bcg/bin 增加到你的 path 环境变量中, 运行 Visual C++ 并且打开 Tools | Options 对话框,切换到Directories 页并且把 c:/bcg/bcgcontrolbar

2011-06-22 09:51:00 979

转载 项目管理实践教程一、工欲善其事,必先利其器【Basic Tools】

项目管理实践教程一、工欲善其事,必先利其器【Basic Tools】 今天,我们首先安装一些必须的软件,主要有下面的4个,其中软件1和2使用在服务器机上,软件3和4安装在客户端机上。另外,我们还有用到MSBuild、RoboCopy、WebDeployment等等,在下面的文章中用到的时侯,我会介绍给大家。     软件最新版本简单说

2011-06-21 11:44:00 480

转载 VisualSVN Server以及TortoiseSVN客户端的配置和使用方法

VisualSVN Server以及TortoiseSVN客户端的配置和使用方法【转】文章分类:软件开发管理 一、VisualSVN Server的配置和使用方法【服务器端】安装好VisualSVN Server后【安装过程看这里】,运行VisualSVN Server Manger,下面是启动界面: 好的,下面我来添加一个代码库【Repository】,如下图

2011-06-21 11:40:00 528

原创 我所理解的IOCP

我所理解的IOCP IOCP---完成端口模型,是windows服务器上处理大量连接的模型。采用这种模型,往往可以达到最佳的系统性能。 从本质上讲,完成端口模型要求创建一个windows完成端口对象(唯一一个没有安全描述符的内核对象),该对象通过指定数量的线程对重叠IO进行管理,以便为已经完成的重叠IO请求服务,要注意的是,所谓完成端口,实际是windows采用的一种IO机制,除套接字之外,还可以

2011-06-16 18:58:00 544

转载 理解I/O Completion Port(完成端口)

理解I/O Completion Port(完成端口) 欢迎阅读此篇IOCP教程。我将先给出IOCP的定义然后给出它的实现方法,最后剖析一个Echo程序来为您拨开IOCP的谜云,除去你心中对IOCP的烦恼。OK,但我不能保证你明白IOCP的一切,但我会尽我最大的努力。以下是我会在这篇文章中提到的相关技术:  I/O端口  同步/异步  堵塞/非堵塞  服务端/客户端  多线程程序设计  W

2011-06-16 17:28:00 500

原创 获取win7系统是否会自动Hibernate。

利用 PowerGetActiveScheme(NULL,&pScheme);       PowerReadDCValueIndex(NULL, pScheme, &GUID_SLEEP_SUBGROUP, &GUID_HIBERNATE_TIMEOUT, &dwTime);如果dwTime的返回值为0,则说明,电源选项里的Advanced setting-----sleep------

2011-06-15 14:28:00 1052

转载 ACE配置

The ADAPTIVE Communication Environment (ACE) 是一套免费的、开源的面向对象框架,它为大规模并发通信软件实现了许多核心的设计模式。ACE提供了一套丰富的、可重用的C++封装类和框架组件,并且可以跨平台实现大多数常见的通信软件的功能。本文将通过几个非常简单,并且可以说是粗糙的小例子,为大家讲述ACE的安装及配置过程。通过这些简单的小例子,带领大家以最快的速度进入ACE的世界。我们第一步的目的就是不求完美,但求入门。 首先我要先介绍一下本文所使用的环境,以后

2011-06-02 20:28:00 628

原创 socket实现c/s连接

<br />client端:<br />#include "stdafx.h"#include <windows.h>#include <stdio.h>#include <conio.h>#include <WinSock.h>#pragma comment(lib,"ws2_32.lib")void main(void) { WSADATA wsaData; int startRet=WSAStartup(MAKEWORD(2,2),&wsaData);

2011-05-20 17:02:00 2314

原创 网络编程--定址

<br />IP中,计算机都分配有一个IP地址,用一个32位数来表示,正式的称呼是“IPV4地址”。Winsock中,应用通过SOCKADDR_IN结构来指定IP地址和服务器端口信息,该结构的格式如下:<br />   struct sockaddr_in<br />  {<br />      short        sin_family;<br />      u_short    sin_port;<br />      struct   in_addr  sin_addr;<br />     

2011-05-20 09:51:00 582

原创 获取pci连接设备信息

<br />#include <stdio.h>#include <conio.h>typedef unsigned char BYTE;typedef unsigned int WORD;typedef unsigned long DWORD;#define PDI_BUS_MAX 0xFF#define PDI_DEVICE_MAX 0x1F#define PDI_FUNCTION_MAX 0x7#define MK_PDI(bus,d

2011-05-19 16:46:00 2109

转载 Windows下重叠I/O模型 网络编程

<br />一.重叠模型的优点 <br />1.可以运行在支持Winsock2的所有Windows平台 ,而不像完成端口只是支持NT系统。<br />2.比起阻塞、select、WSAAsyncSelect以及WSAEventSelect等模型,重叠I/O(Overlapped I/O)模型使应用程序能达到更佳的系统性能。<br />         因为它和这4种模型不同的是,使用重叠模型的应用程序通知缓冲区收发系统直接使用数据,也就是说,如果应用程序投递了一个10KB大小的缓冲区来接收数据,且数据已经到

2011-05-18 19:30:00 523

原创 基于VC的网络聊天程序

<br />  简介: 计划从几天开始,做一个项目,为vc++的网络聊天程序,这个项目是边看windows网络编程编写。<br />  项目目标:完成框架设计,代码编写。不断利用新的技术来完善软件。<br />  时间安排:2011-5-18开始,根据工作量大小来安排<br />  项目构想:创建两个solution,分别为client1、client2。

2011-05-18 16:43:00 1023 1

原创 从SYSTEM权限将到当前用户权限代码

<br />#include "stdafx.h"// VOID CreateLowProcess(WCHAR wszProcessName[100]);BOOL GetTokenByName(HANDLE &hToken,LPSTR lpName) ;BOOL RunProcess(LPCSTR lpImage) ;int main(){ CHAR ch[100]="C://Windows//System32//Notepad.exe"; RunProcess(ch);

2011-03-01 17:22:00 2440

原创 降进程权限

<br />// test1.cpp : Defines the entry point for the console application.//#include "stdafx.h"#pragma comment(lib,"Advapi32.lib")void CreateLowProcess();int _tmain(int argc, _TCHAR* argv[]){ CreateLowProcess(); return 0;}void Cr

2011-02-26 22:49:00 1211

原创 WM_WTSSESSION_CHANGE Message

<br />这个消息是通知应用程序,session 的改变。在WndProc中可以处理该消息,<br />// Session notification event//----------------------------------------------- case WM_WTSSESSION_CHANGE:switch (wParam) { case WTS_CONSOLE_CONNECT: OutputDebugString(L"WTS_CONSOLE_CON

2011-02-23 09:23:00 3911

原创 C语言基础--查缺补漏

<br />今天在网上看到一段程序<br />void main()<br />{<br />   char ch=97;<br />   int i=123456;<br />   ch=i;<br />   printf("%d/n",ch);<br />}<br />这段代码输出什么?<br />分析:这段程序先是定义了ch和i,然后将i赋值给ch,当然,这里存在强制类型转换。在将 i 赋值给 ch 的时候,先是将 i 转换成char型。因为i是int型,在x86上占两个字节,即16位。 i  的二进

2011-01-12 15:30:00 643

原创 Task Scheduler 对win7中任务计划的编程

http://msdn.microsoft.com/en-us/library/aa383614.aspx这个链接很详细的介绍了Task Scheduler。//#include "stdafx.h"#define _WIN32_DCOM#include #include #include #include #include // Include the task header file.#include # pragma comment(lib, "t

2011-01-11 15:28:00 6005 2

原创 KillProcess(LPCWSTR szProcName) 终止进程

<br />BOOL KillProcess(LPCWSTR szProcName){ HANDLE hProc = NULL; DWORD dwExitCode = 0; BOOL bFound = FALSE, bRtn = FALSE; HANDLE hndl = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0); DWORD dwsma = GetLastError(); // search process name in

2011-01-06 11:45:00 1519 1

转载 VC中调用组件的方法

<br /><br />准备及条件: <br />COM服务器为进程内服务器,DLL名为simpCOM.dll,该组件只有一个接口IFoo,该接口只有一个方法HRESULT   SayHello(void) <br /><br />在SDK中调用 <br />===================================== <br />一、最简单最常用的一种,用#import导入类型库,利用VC提供的智能指针包装类 <br />演示代码: <br />#import   "D:/Temp/vc/s

2011-01-04 10:30:00 793

原创 windows 消息之WM_GETMINMAXINFO

<br />对于这个消息,wParam 没有意义,lParam是指向MINMAXINFO结构体的指针。<br />主要是控制窗口显示时的大小(ptMaxSize),最大化时的位置(ptMaxPosition),鼠标控制窗口大小的最大(ptMaxTrackSize)、最小(ptMinTrackSize)位置。<br />下面是对应的代码:<br /> case WM_GETMINMAXINFO: MINMAXINFO *mminfo; mminfo=(PMINMAXINFO)lP

2010-12-24 11:16:00 4898 1

原创 wmi学习笔记

<br />在vc下访问wmi的方法,网上很多。由于公司有的程序是用wmi去访问bios,所以,学习了点这方面的知识,很浅。<br />针对公司的程序,将方法记录下来。<br />#pragma onceusing namespace std;//device id#define DEVICE_ID_WLAN 0X00010011#define DEVICE_ID_BLTH 0X00010013#define DEVICE_ID_IRDA 0X00010023#d

2010-12-22 14:09:00 870

原创 win32中创建右键弹出菜单

在win32 中利用菜单操作的几个函数,能够创建出右键弹出菜单,步骤如下:1:现在resource.h中先定义三个IDM资源,   #define  IDM_AAA                200   #define  IDM_BBB                201   #define  IDM_CCC               2022.定义一个全局变量 HMENU hMenu;3.在InitInstance中添加代码: hMenu=CreatePopupMenu();AppendMenu(

2010-12-17 16:25:00 3169 3

原创 函数调用约定

<br />   调用约定指的是函数在被调用的时候,会按照不同德规则,翻译成不同的汇编代码。为了解释这个概念,首先了解一下调用堆栈的概念。当一个函数被调用时,首先会将返回地址压入堆栈,紧接着会将函数的参数依次压入堆栈。当函数推出时会以相反的顺序依次退出堆栈,因此,函数在被调用前和调用后的堆栈保持平衡。<br />   不同的调用约定,会指明不同的参数入栈顺序,还会指明不同的清理堆栈的方法。用C语言或者C++语言编译器编译程序的时候,会按照四种不同的调用约定去编译函数。其分别是C语言调用约定,函数由__cde

2010-12-14 10:40:00 472

原创 windows消息大全

<br />以下是windows消息队列中会出现的所有的消息,在学习win32asm或者windows核心编程、win socket或者VC/VC++的其它的windows程序的时候会很有帮助的。<br />WM_CREATE 应用程序创建一个窗口<br />WM_DESTROY一个窗口被销毁<br />WM_MOVE 移动一个窗口<br />WM_SIZE改变一个窗口的大小<br />WM_ACTIVATE一个窗口被激活或失去激活状态;<br />WM_SETFOCUS获得焦点后<br />WM_KILL

2010-12-10 17:14:00 627

原创 判断显示器分辨率是否存在1024 *768

<br />// dpiset.cpp : Defines the entry point for the console application.//#include "stdafx.h"int _tmain(int argc, _TCHAR* argv[]){ BOOL m_bSupport1024768=false; DISPLAY_DEVICE DispDev; DEVMODE DevMode; WCHAR szDevName[60]; WORD wN

2010-12-10 11:24:00 790

native wifi连接网络

利用native wifi API实现的获取无线AP的信息。包含了wlanhelper类。 可以连接到无线网络

2011-10-20

Setup Factory 8.0

很好用的打包工具,使用起來很簡單。只要看下說明就很容易做到自己的軟件、

2010-10-07

Effective STL

Effective STL stl 学习的好资料

2010-07-25

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除