- 博客(27)
- 资源 (51)
- 收藏
- 关注
原创 Error 42 error C2784:
Error 42 error C2784: 'bool std::operator &,const std::_Tree &)' : could not deduce template argument for 'const std::_Tree &' from 'const std::string' d:\program files_x86\microsoft visual studio 9.
2013-06-27 17:43:51 1654
转载 error LNK2005: _DllMain@12 already defined in MSVCRTD.lib
本文主要分析和解决编译链接时产生的 LNK2005 错误。【错误信息】: mfcs90ud.lib(dllmodul.obj) : error LNK2005: _DllMain@12 already defined in MSVCRTD.lib(dllmain.obj)【分析原因】: 这篇文章:《在Visual C++中以错误的顺序链接CRT库和MFC库时出现LN
2013-05-22 10:42:23 856
转载 vs2010中臃肿的ipch和sdf文件
使用VS2010建立C++解决方案时,会生成SolutionName.sdf和一个叫做ipch的文件夹,这两个文件再加上*.pch等文件使得工程变得非常的庞大,一个简单的程序都会占用几十M的硬盘容量,可惜毕竟硬盘还没有廉价到免费的地步。那么,该怎么解决呢?其实可以关闭它。方法:Tools->Options->Text Editor->C/C++->Advanced->Disable Dat
2013-04-09 17:13:10 913
转载 VS2010 编写windows service 服务程序
File-New-Project编写windows service 服务程序" alt="vs2010 编写windows service 服务程序" src="http://g.hiphotos.baidu.com/album/pic/item/f11f3a292df5e0fe2f615d295d6034a85edf7299.jpg" width="640" height="336">选
2013-03-11 10:42:05 1256
转载 Windows服务编写综述
摘要:几乎所有的操作系统在启动的时候都会启动一些不需要与用户交互的进程,这些进程在Windows中就被称作服务。它由服务程序、服务控制程序(SCP,service control program)和服务控制管理器(SCM,service control manager)三个组件构成。本文针对服务程序与服务控制程序的编写进行综合讲述。 关键词:Windows,服务,VC++1
2013-03-11 10:36:02 750
转载 GetPrivateProfileInt
///////////////////////////////////////////////////////////////////////////UINT GetPrivateProfileInt( LPCTSTR lpAppName, LPCTSTR lpKeyName, INT nDefault, LPCTSTR lpFileName
2013-03-07 13:50:26 1147
转载 ShellExecute的使用方法
ShellExecute:1.函数功能:你可以给它任何文件的名字,它都能识别出来并打开它。2.函数原型:HINSTANCE ShellExecute(HWND hwnd,LPCTSTR lpOperation,LPCTSTR lpFile,LPCTSTR lpParameters,LPCTSTR lpDirectory,INT nShowCmd);
2013-03-07 09:47:29 1552
转载 关于typedef的用法总结
不管实在C还是C++代码中,typedef这个词都不少见,当然出现频率较高的还是在C代码中。typedef与#define有些相似,但更多的是不同,特别是在一些复杂的用法上,就完全不同了,看了网上一些C/C++的学习者的博客,其中有一篇关于typedef的总结还是很不错,由于总结的很好,我就不加修改的引用过来了,以下是引用的内容(红色部分是我自己写的内容)。用途一:定义一种类型的别名,而不
2013-03-06 17:29:57 594
转载 成为嵌入式程序员应知道的0x10个基本问题
0x1: 是工程师还是民工?“代码工人”,“IT民工”这些似乎是行内人对我这种人最友善的称呼了,我工作第一年的时候对它很厌恶,第二年开始无奈的接受,第三年开始觉得它:哇塞!好亲切哦。千万别叫我工程师,我小时后就查过字典:工程师(Engineer)一词习惯上在多种意义上使用,他们的功能包括设计(design)、规划(plan)、策划(mastermind)、指挥(direct)等。我努力的靠啊靠
2012-08-20 15:36:18 2602
转载 __declspec(dllimport) 到底有什么用?
我相信写WIN32程序的人,做过DLL,都会很清楚__declspec(dllexport)的作用,它就是为了省掉在DEF文件中手工定义导出哪些 函数的一个方法。当然,如果你的DLL里全是C++的类的话,你无法在DEF里指定导出的函数,只能用__declspec(dllexport)导出 类。但是,MSDN文档里面,对于__declspec(dllimport)的说明让人感觉有点奇怪,先来看看MS
2012-08-09 10:53:56 599
转载 DLL的Export和Import
DLL的export是指将DLL中的函数和数据输出到其它程式中,以供其使用。DLL的import是指使用DLL的程式引入DLL中的函数和数据。 DLL的exportDLL 中包含有一个表,称为export table(以下简称ET),其中包含了DLL中可以被外部程式使用的所有函数和数据的名字。只有记录在ET中的函数和数据才可以被外部程式所使用(如果 没有.DEF文件的话),其它所有
2012-08-09 10:53:10 690
转载 Run-Time Check Failure #2 - Stack around the variable 'var' was corrupted
摘要:简介VC++.NET编译新功能,运行时错误检查,编译选项 (/RTC1, equiv. to /RTCsu)最近把一个别人早期在VC 6下编写的一个服务移植到VC 7.1 (.NET 2003)时,突然跳出好些运行时错误提示。经过查询编译器和出错说明,发现了编译器的这一新特性,并修正了代码隐患://someheadefile.h typedef struct tarSomeMessa
2012-08-07 17:52:39 1013
原创 error C2491: 不允许 dllimport 函数 的定义
在工程属性中 预编译宏中加上 DLL_EXPORT为了减少使用dll时候的设置或者代码编写,把dll.h修改一下:#ifndef DLL_EXPORT#define DECLDIR __declspec(dllimport)#else#define DECLDIR __declspec(dllexport)#endifdll实现代码:#include "st
2012-07-24 17:39:31 26392 1
原创 fatal error C1083: 无法打开预编译头文件:“Debug\opencv.pch”: No such file or directory
步骤/方法右键点击你创建的项目,选择“属性标签”点击属性,弹出“项目属性页”,在左侧找到以下位置 配置属性 --> C/C++ --> 预编译头,并选择它:在右边的菜单中选择 “创建/使用预编译头”中的“不使用预编译头文件”点击“确定”按钮退出即可原因分析 编译器一般都是以文件为单位进行编译,如果修改了工程中的一个文件,那么将导致所有文件都要从新编译,这样的编译将耗费很长时间。 为了提高编译
2012-07-24 17:21:45 9706 6
转载 __declspec(dllimport) 到底有什么用?
我相信写WIN32程序的人,做过DLL,都会很清楚__declspec(dllexport)的作用,它就是为了省掉在DEF文件中手工定义导出哪些 函数的一个方法。当然,如果你的DLL里全是C++的类的话,你无法在DEF里指定导出的函数,只能用__declspec(dllexport)导出 类。但是,MSDN文档里面,对于__declspec(dllimport)的说明让人感觉有点奇怪,先来看看MS
2012-07-24 17:20:50 632
原创 应用程序访问底层硬件
2.1驱动程序开发原理 在无操作系统的裸机中,或者类似如DOS这样操作系统中,应用程序和硬件的交互是非常简单的。如同牛郎织女,本来就睡在同一张床上,想怎么说悄悄话都行。可是现在情况有变,他们被天河分开了。要想见面聊几句,也要麻烦喜鹊来搭桥。在WINDOWS操作系统中,应用程序与硬件间的交互与此极其类似。如果没有操作系统,我们访问硬件空间可能只需一条指令就行,甚至可以访问任意的内存空间
2012-03-21 09:56:11 5252
转载 获取系统时间(精确到微秒),驱动中KeQueryPerformanceCounter,Win32程序QueryPerformanceCounter
1.在驱动中获取us级的时间间隔今天在做驱动开发时,需要操作时间,而且还要精确到us,而GetTickCount()函数只能精确到ms,所以就用到下面的函数:LARGE_INTEGER KeQueryPerformanceCounter( IN PLARGE_INTEGER PerformanceFrequency OPTIONAL );其中PerformanceFreque
2012-03-13 17:15:34 2921
原创 VS2008创建和使用dll
一、DLL的创建创建项目->Win32->Win32项目,名称:MyDLL->选择DLL1、新建头文件testdll.h创建函数用到的相关定义声明的头文件,其实就是你的所用的函数的头文件复制过来就可以了。testdll.h代码如下:#ifndef TestDll_H_#define TestDll_H_#ifdef MYLIBDLL#define MYLIBDLL ex
2012-03-03 14:13:58 1289
原创 内存管理基本概念
内存管理概念:1)物理内存PC上有三条总线:数据总线、地址总线和控制总线。32位CPU的寻址能力是4GB个字节,用户最多可以使用4GB的真实物理内存。PC中很多设备都提供了自己的设备内存,例如显卡就提供了自己的显存。这部分内存会映射到PC的物理内存上,也就是读写这段物理地址,其实会读写的设备内存地址,而不会读写物理内存地址。 2)虚拟内存地址Windows所有程序(包括Ring
2012-02-16 09:15:31 661
转载 #pragma指令使用简介(转)
编写程序的时候,我们经常要用到#pragma指令来设定编译器的状态或者是指示编译器完成一些特定的动作.下面介绍了一下该指令的一些常用参数,希望对大家有所帮助! 一. message 参数。message 它能够在编译信息输出窗 口中输出相应的信息,这对于源代码信息的控制是非常重要的。其使用方法为: #pragma message(“消息文本”) 当编译器遇
2012-02-16 09:12:18 488
转载 IRQL 中断请求级别
什么是IRQL?IRQL是Interrupt ReQuest Level,中断请求级别。处理器在一个IRQL上执行线程代码。IRQL是帮助决定线程如何被中断的。在同一处理器上,线程只能被更高级别IRQL的线程能中断。每个处理器都有自己的中断IRQL。我们经常遇见的有四种IRQL级别。“Passive”, “APC”, “Dispatch” and “DIRQL”. “DriverEnt
2012-02-16 09:11:02 857
转载 必须掌握的八个【cmd 命令行】
一,ping 它是用来检查网络是否通畅或者网络连接速度的命令。作为一个生活在网络上的管理员或者黑客来说,ping命令是第一个必须掌握的DOS命令,它所利用的原理是这样的:网络上的机器都有唯一确定的IP地址,我们给目标IP地址发送一个数据包,对方就要返回一个同样大小的数据包,根据返回的数据包我们可以确定目标主机的存在,可以初步判断目标主机的操作系统等。下面就来看看它的一些常用的操
2012-01-31 11:20:17 424
原创 C中fread()函数的返回值
fread(从文件流读取数据) 表头文件 #include 定义函数 size_t fread(void * ptr,size_t size,size_t count,FILE * stream); 函数说明 fread()用来从文件流中读取数据。参数stream为已打开的文件指针,参数ptr 指向欲存放读取进来的数据空间,读取的字节数以参数size*count来
2011-12-14 09:46:00 2202
转载 在C++中实现变长数组
1.变长一维数组 这里说的变长数组是指在编译时不能确定数组长度,程序在运行时需要动态分配内存空间的数组。实现变长数组最简单的是变长一维数组,你可以这样做: //文件名: array01.cpp #include using namespace std; int main() { int len; cin> > len;
2011-12-02 17:01:15 730
转载 libusb介绍和使用例子
驱动开发向来是内核开发中工作量最多的一块,随着USB设备的普及,大量的USB设备的驱动开发也成为驱动开发者手头上做的最多的事情。本文主要介绍 Linux平台下基于libusb的驱动开发,希望能够给从事Linux驱动开发的朋友带来些帮助,更希望能够给其他平台上的无驱设计带来些帮助。文章是我在工作中使用libusb的一些总结,难免有错误,如有不当的地方,还请指正。 Linux 平台上的usb
2011-12-01 14:02:36 3467
原创 ETHERNET数据包格式( IP & UDP & ICMP & ARP )
一、ETHERNET 数据包的协议类型 TYPE 的值为 0x0800:IP协议,即:ETHERTYPE_IP, 该值在 /usr/include/net/ethernet.h中有定义。ETHERNET 数据包的格式又细分 为如下几种情况:(1) IP 报头中的协议号码为 IPPROTO_TCP,其值为 6 。ETHERNET 数据包的格式如下: ||
2011-11-25 13:58:45 3618
原创 error C3163: “_vsnprintf”: 属性与以前的声明不一致
C2008 关于_vsnprintf 的重定义问题在使用VS2008打开一个2005的firebird工程,进行编译时,发生一个关于_vsnprintf 的错误c:\program files\microsoft visual studio 9.0\vc\include\stdio.h(358) : error C3163: “_vsnprintf”: 属性与以前的声明不一致c
2011-11-03 15:51:26 3545
liuxdriver_code_tool 2.6内核驱动程序(全)
2011-07-26
PCI2.6字符驱动 linux2.6内核程序
2011-07-26
基于RSA的大数运算库VC++环境下正确运行。
2011-07-18
c# udp server and client
2011-12-05
windows ce mobile用到的RAPI和dcc
2011-10-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人