自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (5)
  • 收藏
  • 关注

原创 windowsAPI之OpenProcessToken,AdjustTokenPrivileges 和LookupPrivilegeValue

这三个函数主要用来提升进程的权限 1 OpenProcessToken()函数:获取进程的令牌句柄 OpenProcessToken的原型. BOOL WINAPI OpenProcessToken( __in HANDLE ProcessHandle, __in DWORD DesiredAccess, __out PHA

2015-08-28 16:14:41 1995

原创 获取电脑的开机时间NtQuerySystemInformation

我们调用的函数在ntdll.dll链接库中,并且我们只能进行动态的链接 下面对ntdll.dll链接库进行简单的介绍: ntdll.dll描述了windows本地NTAPI的接口。是重要的Windows NT内核级文件。当Windows启动时,ntdll.dll就驻留在内存中特定的写保护区域,使别的程序无法占用这个内存区域。 百度百科:http://baike.baidu.com/link?u

2015-08-27 10:53:15 3710

原创 封装类之CSplashWnd(应用程序的启动画面)

1XX.h文件class CSplashWnd : public CWnd{ DECLARE_DYNAMIC(CSplashWnd)public: CSplashWnd(); virtual ~CSplashWnd();protected: virtual void PostNcDestroy(); afx_msg int OnCreate(LPCREATE

2015-08-25 09:02:06 698

原创 封装类之MYSQLHelper(C#连接MySql数据库)

using System;using System.Collections;using System.Configuration;using MySql.Data;using MySql.Data.MySqlClient;using System.Data;/// <summary>///MYSQLHelper 的摘要说明/// </summary>public abstract c

2015-08-25 08:57:01 7184

原创 封装类之FileVersion(获取文件属性)

应用此类可以获取应用程序的程序名,产品名称,公司名称,版本号,版权等信息 1XX.h文件class CFileVersion { // Construction public: CFileVersion(); // Operations public: BOOL Open(LPCTSTR lpszModuleName); v

2015-08-25 08:28:24 1213

转载 WPARAM和LPARAM的含义

lParam 和 wParam 是宏定义,一般在消息函数中带这两个类型的参数,通常用来存储窗口消息的参数。 LRESULT CALLBACK WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam); wParam 通常用来存储小段信息,如,标志 lParam 通常用于存储消息所需的对象 LRESULT CALLBACK W

2015-08-24 13:55:35 6475

原创 WindowsAPI之RegOpenKey和RegSetValueEx函数

以上两个函数可以实现开机自启动 1 RegOpenKey函数打开给定键。这个函数与Windows 3.1兼容。基于Win32的应用程序应该使用RegOpenKeyEx函数。 LONG RegOpenKey( HKEY hKey, // 要打开键的句柄 LPCTSTR lpSubKey, // 要打开子键的名字的地址 PHKEY phkResult // 要打开键的句柄的地址); 参数 h

2015-08-24 10:48:33 6471

原创 大数相加

大数相加就是进行字符串的操作:#include<stdio.h>#include<string.h>#include<stdlib.h>/*大数相加可以使用字符串进行操作*/char* add(const char *arr,const char *brr){ int lena=strlen(arr); int lenb=strlen(brr); int maxl

2015-08-21 10:10:55 389

原创 error LNK2001: unresolved external symbol _GetFileVersionInfoA@16解决办法

查看msdn可得到下面的信息: GetFileVersionInfo The GetFileVersionInfo function retrieves version information for the specified file. BOOL GetFileVersionInfo( LPTSTR lptstrFilename, // file name DWORD dwHa

2015-08-20 11:53:26 1094

转载 WindowsAPI之GetFileVersionInfo函数和VerQueryValue函数

VS_FIXEDFILEINFO结构包含了文件的版本信息:typedef struct tagVS_FIXEDFILEINFO { DWORD dwSignature; //包含的值是0xFEEF04BD DWORD dwStrucVersion; //该结构的32位二进制版本号,高16位是主版本号,低16位是副版本号 DWORD dwFileVersionMS; //该文件

2015-08-20 10:56:25 8283

转载 堆和栈的区别

一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。 3、全局区(静态区)(st

2015-08-19 08:17:07 391

原创 两种方法实现托盘功能

1为了实现托盘功能,我们可以使用消息机制来进行实现 我们需要使用到windows的一个API函数:BOOL Shell_NotifyIcon( DWORD dwMessage, PNOTIFYICONDATA lpdata);其中dwMessage可以取以下值: NIM_ADD 向托盘中加入一个图标 NIM_MODIFY 修改托盘中的图标 NIM_DELETE 从托盘中删除一个图标 参数p

2015-08-18 09:23:27 979

原创 对话框控件大小随窗口的大小变化而变化

我们经常会发现当我们将窗口最大化时,里面的控件并没有进行改变,接下来我就介绍一下此问题的解决办法,我们其实一般的都会把窗口的最大化按钮失效,是窗口不能进行最大化操作,但是有时候我们还是需要对窗口进行最大化操作的,下面我们可以通过添加WM_SIZE消息来解决此问题。 1 在XXDLg.h中添加 afx_msg void OnSize(UINT nType, int c

2015-08-17 12:05:33 6901 1

转载 VC++获取病毒的消息钩子

一、消息钩子的概念 1、基本概念 Windows应用程序是基于消息驱动的,任何线程只要注册窗口类都会有一个消息队列用于接收用户输入的消息和系统消息。为了拦截消息,Windows提出了钩子的概念。钩子(Hook)是Windows消息处理机制中的一个监视点,钩子提供一个回调函数。当在某个程序中安装钩子后,它将监视该程序的消息,在指定消息还没到达窗口之前钩子程序先捕获这个消息。这样就有机会对此消

2015-08-14 10:09:19 534

原创 WindowsAPI之SetWindowsHookEx()

钩子函数可以用来获取系统的按键消息,进而可以屏蔽某些按键或者按键组合。我们发现WH_KEYBORAD_LL和WH_MOUSE_LL这两个low-level的hook可以被安装成全局的,这我们不妨用这两个low-level的hook替换掉WH_KEYBORAD和WH_MOUSE。 1 首先在xxDlg.h中添加如下代码#if (_WIN32_WINNT >= 0x0400)#define WH_K

2015-08-13 17:11:39 924

转载 全局钩子函数之 SetWindowsHookEx

虚拟键码表:http://www.cnblogs.com/del/archive/2007/12/07/987364.html在windows操作系统中,如果我们想对键盘进行重定义,比如说按某键就可发直接上网,按某键可以直接关闭窗口等等,如何实现呢!在Visual C++中用常规class wizard方法是不可以实现的,这里我们用两种方法去实现它。方法1:利用RegisterHotKey函获数实现

2015-08-13 16:12:21 6027 1

转载 C++中使用反射动态加载和卸载DLL

C++中加载和卸载DLL是一件很容易的事,LoadLibrary和FreeLibrary让你能够轻易的在程序中加载DLL,然后在任何地方卸载。在C#中我们也能使用Assembly.LoadFile实现动态加载DLL,但是当你试图卸载时,你会很惊讶的发现Assembly没有提供任何卸载的方法。这是由于托管代码的自动垃圾回收机制会做这件事情,所以C#不提供释放资源的函数,一切由垃圾回收来做。这引发了一

2015-08-13 10:24:36 2833

原创 c#之编码解码

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;namespace 编码与解码{

2015-08-12 14:47:06 1054

原创 Windows API之FindWindow和FindWindowEx函数

1 FindWindow函数: 函数功能:该函数获得一个顶层窗口的句柄,该窗口的类名和窗口名与给定的字符串相匹配。这个函数不查找子窗口。在查找时不区分大小写。 函数型:HWND FindWindow(LPCTSTR IpClassName,LPCTSTR IpWindowName); 参数: IpClassName :指向一个指定了类名的空结

2015-08-12 11:00:57 9761 2

原创 通讯录系统(VS2010控制台程序)

本系统实现在控制台对通讯录信息进行管理 具体代码如下:#include<stdio.h>#include<stdlib.h>#include<string.h>//定义结构体typedef struct Info{ char name[20];//姓名 char telphone[20];//电话 char city[20];//城市 char provin

2015-08-11 19:34:30 1074

原创 枚举电脑中的串口

我们一般对串口进行通信的时候,是自己指定的端口,但是个人感觉不是很方便,今天在网上找到了枚举串口的两种方法感觉很实用,不用自己去设备管理器查看串口了。第一种方式 :通过注册表来枚举串口void GetComList_Reg( CComboBox * CCombox ){ HKEY hkey; int result; CString strComName;//串

2015-08-11 15:15:42 1180

原创 MSComm控件调试神器

我们可以下载这个虚拟串口调试神器(Configure Virtual Serial Port Driver),可以帮助我们创建虚拟的串口对!下载地址:http://download.csdn.net/detail/cxq_1993/8990345 破解版

2015-08-11 14:26:05 347

转载 VC6.0 通过ado连接access数据库

ADO连接数据库 1、COM库的初始化  我们可以使用AfxOleInit()来初始化COM库,这项工作通常在CWinApp::InitInstance()的重载函数中完成,请看如下代码:: public: _ConnectionPtr m_pConnection; BOOL CAdoTestApp::InitInstance() { // 初始化COM

2015-08-10 15:45:41 2234

原创 MSComm控件编程

界面布局 //打开串口void CMSCommDlg::OnButtonOpen() { // TODO: Add your control notification handler code here if(m_mscomm.GetPortOpen()) { m_mscomm.SetPortOpen(FALSE); } m_mscomm

2015-08-07 15:06:27 336

原创 MSComm控件介绍

在MFC中进行串口通讯最简单的方法莫过于在对话框中使用MSComm控件了,MSComm通信控件提供了一系列标准通信命令的接口,它允许建立串口连接,可以连接到其他通信设备(如Modem).还可以发送命令、进行数据交换以及监视和响应在通信过程中可能发生的各种错误和事件,从而可以用它创建全双工 、事件驱动的、高效实用的通信程序。一、用MSComm控件通信 1.串口通信基础知识 一般悦来,计

2015-08-07 10:34:23 628

原创 通讯录系统 (C语言 控制台应用程序)

本系统是用纯c语言写的通讯录系统,主要涉及的是单链表的增加节点,删除节点,查询节点等,还有文件的读写。#include<stdio.h>#include<stdlib.h>#include<string.h>//定义结构体typedef struct Info{ char name[20];//姓名 char telphone[20];//电话 char city[2

2015-08-06 17:20:05 915

vc++目录监控

本系统实现了对指定的目录进行监控,包括文件的增删改,还实现了系统托盘,启动画面,获取程序的版本信息等等功能!

2015-08-24

ADOAccess.rar

本系统通过ado方式连接access数据库,实现学生信息表的增删改查等操作

2015-08-10

贴肤Skin++文件压缩包

MFC贴肤,贴肤Skin++文件压缩包,美化对话框界面

2015-04-25

全国计算机技术与软件专业技术资格水平考试 历年真题(07-13)

很全,仔细研究琢磨对自己的提升是很快的,哈哈,希望大家踊跃下载

2014-05-03

空空如也

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

TA关注的人

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