- 博客(33)
- 收藏
- 关注
原创 win32用npmw安装nodejs
先按照https://fengmk2.com/blog/2014/03/node-env-and-faster-npm.html中的方法安装nvmw直接从 github clone nvmw 到本地, 这里使用 e:\git 目录存放 git 项目:$ e:$ cd git$ git clone https://github.com/cnpm/nvmw.git设置 e:\g
2017-01-17 15:16:15
1232
1
原创 unicode模式下写日志文件
在C/C++/VC/MFC技术交流群【197778914】中看到大牛VOID写的打造简易日志函数的视频,于是想自己写一个UNICODE版本的在stdafx.h中定义函数void TraceLog(TCHAR* lpszFormat, ...);在stdafx.cpp中实现该函数(原来还可以这样,那就可以把一些公用的函数写在这个cpp里面)void TraceLog(TCHAR*
2015-06-23 17:33:41
658
原创 重载背景的对话框上的picture双缓冲绘图
做了一个简单的对话框,上面有一个picture控件,为了让picture控件上的内容在窗口最小化或者拖出窗口范围之后,仍然得以保存,并且防止闪烁,采用了双缓冲绘图的方式。重载了OnPaint函数。。。//也可以不重绘OnEraseBkGroundPAINTSTRUCT ps; CDC* pDC=GetDlgItem(IDC_PIC)->BeginPaint(&ps);//C
2015-06-19 10:36:32
1037
原创 在重绘了背景的对话框上用双缓冲绘图的方式绘制picture控件时出现的问题
做了一个简单的对话框,上面有一个picture控件,为了让picture控件上的内容在窗口最小化或者拖出窗口范围之后,仍然得以保存,并且防止闪烁,采用了双缓冲绘图的方式。重载了OnPaint函数。。。//也可以不重绘OnEraseBkGroundPAINTSTRUCT ps; CDC* pDC=GetDlgItem(IDC_PIC)->BeginPaint(&ps);//C
2015-06-19 10:34:17
3026
原创 vs2008转到2013后,在对话框中添加控件程序直接退出
用vs2008写了一个对话框软件,上面有一些资源,后来升级到2013了,直接运行是可以正常显示的,但是在升级之后2013的对话框上添加任意的资源,再次运行代码,编译都是没有错误的,运行的时候却直接退出了,提示:程序“[0x4FC] XX.exe”已退出,返回值为 0(0x0)。各种调试,最后才在同事的帮助下,发现原来是一个很小的问题,算是vs2013的bug吧,我原来的对话框界面上包含
2015-06-11 15:34:08
1452
原创 vs2008转为2013之后,在对话框上添加控件程序直接退出
用vs2008写了一个对话框软件,上面有一些资源,后来升级到2013了,直接运行是可以正常显示的,但是在升级之后2013的对话框上添加任意的资源,再次运行代码,编译都是没有错误的,运行的时候却直接退出了,提示:程序“[0x4FC] XX.exe”已退出,返回值为 0(0x0)。各种调试,最后才在同事的帮助下,发现原来是一个很小的问题,算是vs2013的bug吧,我原来的对话框界面上包含
2015-06-11 15:32:49
1711
原创 MFC怎么让图片适应picture control控件的大小
UpdateWindow();int height, width;CRect rect;//定义矩形类CRect rect1;CImage image; //创建图片类image.Load(_T("1.jpg"));height = image.GetHeight();width = image.GetWidth();m_ctrlPic.GetClientR
2014-10-11 13:01:41
39362
1
原创 path环境变量的添加所引发的
之前做了一个可执行程序,里面用到了一些dll,全部放在外面太杂乱,于是把所用到的dll都放到一个文件夹win中,然后把win文件夹的路径添加到了环境变量中,用的是相对路径,批处理命令如下:wmic environment where "name='path' and username=''" set VariableValue="%path%;..\win;"这样运行可执行文件时就可以找到
2012-11-29 20:42:01
2106
原创 directshow下载及运行示例程序错误的解决方法
下载DirectX 9 SDK开发包,网址是http://cid-a76c4a4a3032ded0.skydrive.live.com/browse.aspx/.Public/DirectX%209.0%20SDK下载之后解压缩一个,会出现一个exe文件,双击它,所有的文件会被重新解压缩到一个文件夹中,双击setup安装,安装完毕。在vc的工程的Tools-Options-Director
2012-11-27 20:39:47
611
原创 opencv存储视频时存储大小为0以及打开是乱码的解决方法
CvCapture *capture=cvCaptureFromAVI(m_avipath); if (!capture) { fprintf(stderr,"Could not initialize capturing...\n"); return; } int outCompressCodec = (int)cvGetCaptureProperty(ca
2012-11-13 14:31:07
3208
转载 程序员面试宝典 八进制转十进制
一、简历注意事项: 简短、客观、不过分自谦、写明职位、无语法错误、简洁直白、不注水不意味着将所有弱项都写进去。 二、程序员笔试内容: C++、数据结构、数据库、设计模式、网络、智力测验,要注意C++中指针,继承多态等问题。要习惯手写程序。 三、电话面试: 自信、礼貌、认真、严肃。外企电面一般不会涉及过多技术,要准备自我介绍。 四、面试
2012-08-21 14:53:49
2759
转载 Debug和Release有什么区别
Debug版本包括调试信息,所以要比Release版本大很多(可能大数百K至数M)。至于是否需要DLL支持,主要看你采用的编译选项。如果是基于ATL的,则Debug和Release版本对DLL的要求差不多。如果采用的编译选项为使用MFC动态库,则需要MFC42D.DLL等库支持,而Release版本需要MFC42.DLL支持。Release Build不对源代码进行调试,不考虑MFC的诊断宏,使
2012-04-09 10:24:37
562
原创 指针malloc的内存泄露问题
遇到了一个问题即两个指针a,b同时指向同一块内存区,然后把a重新分配内存,此时b的内存应该还是之前分配的,但是a的内存应该已经出现了泄露,如果在a分配内存之前free掉,则b所指向的内存即空例如int *a,*b;a=(int *)malloc(sizeof(int)); b=(int *)malloc(sizeof(int));此时a之前分配的内存泄露了但是如果
2011-11-05 16:12:19
603
转载 malloc()和free()
一、malloc()和free()的基本概念以及基本用法:1、函数原型及说明:void *malloc(long NumBytes):该函数分配了NumBytes个字节,并返回了指向这块内存的指针。如果分配失败,则返回一个空指针(NULL)。关于分配失败的原因,应该有多种,比如说空间不足就是一种。void free(void *FirstByte): 该函数是将之前用malloc分
2011-11-05 15:14:16
456
转载 内存泄露检查工具及相关网站
Visual Leak Detectorhttp://xiaoruanjian.iteye.com/blog/1091410灵活自由是C/C++语言的一大特色,而这也为C/C++程序员出了一个难题。当程序越来越复杂时,内存的管理也会变得越加复杂,稍有不慎就会出现内存问题。内存泄漏是最常见的内存问题之一。内存泄漏如果不是很严重,在短时间内对程序不会有太大的影响,这也使得内存泄漏问题有很强的隐
2011-11-02 22:04:04
966
转载 编译错误fatal error C1033: cannot open program database '文件夹路径/debug/vc60.pdb' .
--------------------Configuration: Style - Win32 Debug--------------------Compiling...StdAfx.cppe:/c++expriencement/sunxin/style/stdafx.cpp(0) : fatal error C1033: cannot open program database '
2011-11-02 22:00:49
3938
转载 Invalid Address specified to RtlValidateHeap
一.首先是”Invalid Address specified to RtlValidateHeap “找到了这篇文章:http://hi.baidu.com/umu618/blog/item/d4e8242e424e3e564fc226d3.html“一个可能的原因:在不同模块(工程)之间传递 C++ 类,而这两个模块用了不同的运行时库(Runtime Library)设置。例如:EXE
2011-11-02 14:31:21
1326
转载 Visual Leak Detector 下载 以及在 VC6.0 中的使用方法!
Visual Leak Detector (VLD) 1.9h (Beta),点这里开始下载!我昨天用到这个工具,下载到Visual Leak Detector 后按照网上的使用步骤开始调试,新建了一个Win32的应用程序,结果是成功了。但当我在自己以前的MFC工程中包含了这个文件,编译能够通过,一运行就会出错,整的我好困惑,也许是版本不同的原因,网上大部分讲解的都是1.0版本的,而我的是1.
2011-11-02 10:19:33
1607
转载 new和malloc的区别和联系
1、new 是c++中的操作符,malloc是c 中的一个函数2、new 不止是分配内存,而且会调用类的构造函数,同理delete会调用类的析构函数,而malloc则只分配内存,不会进行初始化类成员的工作,同样free也不会调用析构函数3、内存泄漏对于malloc或者new都可以检查出来的,区别在于new可以指明是那个文件的那一行,而malloc没有这些信息。4、new 和 mallo
2011-11-02 09:00:03
3988
转载 [转载]关于CvSeq指针的内存释放问题
直接用例子说明吧.例如我要用Hough变换找出图像中的线段,会用到下面的语句: cvCanny(pImageGray, pImageDst, 50, 200, 3); CvMemStorage *storage = cvCreateMemStorage(0); CvSeq *lines = cvHoughLines2(pImageDst, storage, CV_HO
2011-11-01 10:34:42
1016
原创 shfileoperation
复制时应该保证要复制到的文件夹没有打开或使用,否则可能出错 SHFILEOPSTRUCT oFile; ZeroMemory(&oFile, sizeof(SHFILEOPSTRUCT));// oFile.hwnd=GetSafeHwnd(); oFile.
2011-09-28 16:13:08
414
原创 VC中调试程序时光标错位
第一种情况:有时候调试文件的时候会出现错位的情况。 出现的原因一般情况是因为有VC编辑器无法识别的字符存在。比如从QQ中复制的代码,换行符和回车符的格式会和windows默认的格式有区别。一个简单的解决方法是将代码复制到windows的记事本中,将出现的乱码字符(比如
2011-09-27 15:10:01
899
原创 .c/.cpp文件编译成exe .mdp文件
可以在命令行中输入cl.exe XXX.c/XXX.cpp若想屏幕不一闪而过,可以在程序中加入 system("pause"); .mdp文件是老版本的工程文件,可以直接用VC打开,提示转换时确定即可
2011-09-21 19:14:06
878
原创 windows核心编程以及其他的一些网站
http://technet.microsoft.com/zh-CN/sysinternals/bb896653http://technet.microsoft.com/zh-CN/sysinternals/bb896657.aspx自己写的C/C++编译器Doctors
2011-09-21 16:32:50
423
转载 Visual C++中函数调用方式浅探
我们知道在进行函数调用时,有几种调用方法,分为C式,Pascal式。在C和C++中C式调用是缺省的,除非特殊声明。二者是有区别的,下面我们用实例说明一下:1. __cdecl :C和C++缺省调用方式例子:void Input( int &m,int &n);/*
2011-09-21 16:28:30
368
转载 error LNK2001: unresolved external symbol _main解决办法(zz)
error LNK2001: unresolved external symbol _main解决办法 解决外部符号错误:_main,_WinMain@16,__beginthreadex -!t'my`yK 在创建MFC项目时, 不使用MFC AppWiz
2011-09-21 16:27:15
421
转载 vc工程介绍
ATL COM应用程序向导群集资源类型向导,创建两个项目,您可以在Microsoft群集服务器部署到管理和监控群集资源(应用程序)。用户自定义的应用程序向导数据库工程DevStudio(就是你用的VC6)插件向导扩展存储过程向导。SQL Server用的。
2011-09-06 16:12:47
1397
转载 关于Vc编译选项
许多Visual C++的使用者都碰到过LNK2005:symbol already defined和LNK1169:one or more multiply defined symbols found这样的链接错误,而且通常是在使用第三方库时遇到的。对于这个问题,有的朋友可能不
2011-09-06 16:08:20
437
原创 VC编译器产生的文件简介
.CLW 文件是VC Class Wizard信息文件。存放了Class Wizard的信息。ClassWizard生成的用来存放类信息的文件。classwizard信息文件,ini文件的格式。.NCB 文件是分析器信息文件,是由系统自动产生的。是“No Compile Br
2011-09-06 15:38:00
1007
转载 VC++中的各种文件各起的是什么做用?
DSW:全称是Developer Studio Workspace,最高级别的配置文件,记录了整个工作空间的配置信息,她是一个纯文本的文件,在vc创建新项目的时候自动生成DSP:全称是Developer Studio Project,也是一个配置文件,不过她记录的是一
2011-09-06 15:36:17
693
原创 两个obj文件怎么连接生成一个exe程序
要保证这两个obj中有且只有一个main函数,然后用link命令来进行连接。link /OUT:输出文件.exe [参数] A.obj B.obj比如需要用1.obj和2.obj生成a.exe,a.exe是一个控制台程序,那么就是link /OUT:a.exe /SU
2011-09-06 15:23:28
8055
转载 VC中怎样修改生成的EXE文件的图标
.不知道的话确实是个问题,VS中根本找不到修改的地方,综合网友们的说法,无外乎三种:1. 直接修改IDR_MAINFRAME图标,瞒天过海!2. 插入新图标,删掉IDR_MAINFRAME图标,然后将新图标的ID改为IDR_MAINFRAME,斩草除根!一劳永逸!不留
2011-09-05 20:37:49
1259
原创 vc6.0 中getline需要按两次回车的解决方法
c++的标准库模板函数getline在读到限定符后还要读取额外字符... 解决方法:进入X:\Program Files\Microsoft Visual Studio\VC98\Include目录(VC6.0安装的地方),用记事本打开string(注意,不是string.h
2011-09-01 16:09:21
2134
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人