
mfc
form88
这个作者很懒,什么都没留下…
展开
-
进程与线程的一个简单解释
进程与线程的一个简单解释进程(process)和线程(thread)是操作系统的基本概念,但是它们比较抽象,不容易掌握。最近,我读到一篇材料,发现有一个很好的类比,可以把它们解释地清晰易懂。计算机的核心是CPU,它承担了所有的计算任务。它就像一座工厂,时刻在运行。假定工厂的电力有限,一次只能供给一个车间使用。也就是说,一个车间开工的时候,其他车间都必须停工。背后的含义就是,单个...转载 2019-02-18 10:19:15 · 132 阅读 · 0 评论 -
CreateFontIndirect函数功能
CreateFontIndirect函数功能创建一个逻辑字体,创建的字体具有LOGFONT对象确定的特性。创建的字体后边就可以由任何设备环境选择作为当前的字体。 HFONT CreateFontIndirect( CONST LOGFONT *lplf //pointer to logical font structure ); 1 2 3 lplf是一个定义逻辑字体特性的转载 2018-01-29 19:41:50 · 1603 阅读 · 0 评论 -
关于vs2012ResourceView打开资源失败,出现“OPened in another editor”解决方案
关于vs2012ResourceView打开资源失败,出现“OPened in another editor”解决方案解决方案:标题 ##关闭所有CPP,H文件,然后重启即可转载 2018-02-05 14:59:36 · 788 阅读 · 0 评论 -
FAG MFC Radio Button 使用 分组 RadioButton 用法
按CTRL+D,保证同一组内的radio的tab序号是连续的;调整tab序号的方式是:鼠标点击数字,比如先点3,然后点7,则3和7会交换,即radio1变为7,radio5变为3;关联int型变量 注意:只需将group属性为true的radio1关联,radio2和radio3无需关联; 同样,radio4需关联,radio5无需关联转载 2018-02-05 14:57:21 · 195 阅读 · 0 评论 -
HBITMAP与BITMAP 的区别 BMP图像的格式
HBITMAP 是句柄; BITMAP 是实例: typedef struct tagBITMAP { /* bm */ int bmType;//必须是BM int bmWidth;//指定位图的宽度(以象素为单位) int bmHeight;//指定位图的高度(以象素为单位)。 int bmWidthByt转载 2018-02-03 11:46:36 · 12534 阅读 · 0 评论 -
字体小谈:CreateFont和LOGFONT
字体小谈:CreateFont和LOGFONT 2014年02月24日 ⁄ 综合 ⁄ 共 3719字 ⁄ 字号 小 中 大 ⁄ 评论关闭 typedef struct tagLOGFONT { LONG lfHeight; LONG lfWidth; LONG lfEscapement; LONG lfOrientation; LONG lfWeight; BYTE lf转载 2018-02-01 08:50:21 · 2570 阅读 · 0 评论 -
mysql “error LNK2019: 无法解析的外部符号”的几种可能原因
“error LNK2019: 无法解析的外部符号”的几种可能原因 【图片版见word笔记】 来源:http://blog.youkuaiyun.com/shenziheng1/article/details/54588457 1.前言error LNK2019: 无法解析的外部符号这个错之前见过很多次,能知道最根本的原因在于链接过程中没有搜索到程序用到的库文件,即*.lib。 笔记本重装了系统,有32原创 2017-12-17 19:08:42 · 2821 阅读 · 0 评论 -
apache一键安装,MSI文件
访问Apache HTTP Server首页,也可以在百度搜索Apache HTTP Server,第一个网站就是 如何安装Apache HTTP Server 点击download下面的from a mirror,如图红框 如何安装Apache HTTP Server 建议下载2.0.65的版本,如图红框,点击 如何安装Apache HTTP Server 点击以下版本下载 如转载 2017-12-16 20:16:22 · 1985 阅读 · 0 评论 -
MySQL下载地址
https://dev.mysql.com/downloads/mysql/原创 2017-12-16 13:19:40 · 375 阅读 · 0 评论 -
VC下使用MySql的方法
VC下使用MySql的方法博客分类: 数据库 MySQLVC++SQLSQL ServerC# [/size] 在做对比mysql和sqlite数据对比工作时候,我用C++编程来实现时候遇到了些问题,首先就是怎么在C++里把mysql的数据读出来,现在解决如下: 1.需要用到的头文件? 由于C++没有提供专门的数据库操作接口函数,相应的接口函数都由第三方来提转载 2017-12-16 11:43:50 · 1392 阅读 · 0 评论 -
CFileDialog使用注意事项GetFileName()和GetPathName();
使用MFC编程的时候会使用CFileDialog对文件夹或者文件路径的获取.但是在使用时候注意如下这个函数 [cpp] view plain copy CString GetFolderPath() const; // return full path 看似会返回选取的文件夹路径回来.其实,不全对. 经本人测试,如果该函数在WIN10上面运行,能够正确返回文件夹路径,但是在XP系统,则会直接转载 2017-12-12 13:57:12 · 6982 阅读 · 0 评论 -
VC++ 6.0静态编译
使用静态链接库:通过菜单中的”工程”->”设置”,”General”选项卡中”Microsoft Foundation Classes:”下拉选择”Use MFC in a Static Library”,这样,就可以设置为使用静态链接库了.如果选择use MFC in a Shared DLL 的话,你编译后的程序中不包含MFC库,所以文件会比较小,但是如果你的程序直接移到一个没有安装过MFC的机转载 2015-08-01 23:58:35 · 879 阅读 · 0 评论 -
vs2010下更换exe图标
弄了近个多小时。 直接更换res,资源下面的ico文件即可,win10系统下,需要重启系统,才可以看到实际图标发生改变。原创 2018-04-15 21:32:11 · 1428 阅读 · 0 评论 -
(fag:导入wav文件后要重启vs2010方生效)
(fag:导入wav文件后要重启vs2010方生效)原创 2018-04-25 01:29:49 · 210 阅读 · 0 评论 -
绘制蓝色半透明矩形的代码
//以下是一个绘制蓝色半透明矩形的代码 CDC memdc; CBitmap bmp,*pOldBitmap; memdc.CreateCompatibleDC(pDC); bmp.CreateCompatibleBitmap(pDC,300,200); pOldBitmap = memdc.SelectObject(&bmp); memdc.Fil...转载 2018-04-20 23:11:46 · 1840 阅读 · 0 评论 -
进程、线程、多线程相关总结
进程、线程、多线程相关总结一、说说概念1、进程(process)狭义定义:进程就是一段程序的执行过程。广义定义:进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。它是操作系统动态执行的基本单元,在传统的操作系统中,进程既是基本的分配单元,也是基本的执行单元。简单的来讲进程的概念主要有两点:第一,进程是一个实体。每一个进程都有它自己的地址空间,一般情况下,包括文本区域(tex...转载 2019-02-18 10:13:58 · 120 阅读 · 0 评论 -
visual studio运行时库MT、MTd、MD、MDd
MT:mutithread,多线程库,编译器会从运行时库里面选择多线程静态连接库来解释程序中的代码,即连接LIBCMT.lib库MTd:mutithread+debug,多线程调试版,连接LIBMITD.lib库MD:MT+DLL,多线程动态库,连接MSVCRT.lib库,这是个导入库,对应动态库为MSVCRT.dllMDd: MT+DLL+debug,多线程动态调试库,连接MSVCRTD....原创 2019-02-17 21:32:36 · 446 阅读 · 0 评论 -
Error hnk2005:exist already defined in msvcrt.lib(MSVCR100.dll)_LIBCMTD.lib 解决方案
Error hnk2005:exist already defined in msvcrt.lib(MSVCR100.dll)_LIBCMTD.lib 解决方案2013-01-23 21:33 by chenkai, 8911 阅读, 0 评论, 收藏, 编辑今天在调试发布一个Windows 8游戏版本时发现这个异常:Error 1 : error LNK2005: _exit alr...原创 2019-02-16 10:40:49 · 239 阅读 · 0 评论 -
sqlite入门基础
sqlite入门基础(二):sqlite3_get_table,sqlite3_free_table上一篇介绍的sqlite3_exec 是使用回调来执行对select结果的操作。还有一个方法可以直接查询而不需要回调。但是,我个人感觉还是回调好,因为代码可以更加整齐,只不过用回调很麻烦,你得声明一个函数,如果这个函数是类成员函数,你还不得不把它声明成static的(要问为什么?这又是C++基础了...原创 2019-02-15 11:42:13 · 207 阅读 · 0 评论 -
sqlite入门基础
sqlite入门基础(一):sqlite3_open,sqlite3_exec,slite3_close打开数据库链接sqlite3_open用法原型:int sqlite3_open(const char filename, / Database filename (UTF-8) */sqlite3 ppDb / OUT: SQLite db handle /)...转载 2019-02-15 11:39:17 · 198 阅读 · 0 评论 -
FAG自我笔记VS2010使用sqlite
作者:明月清风-精进不止来源:优快云原文:https://blog.youkuaiyun.com/xiaxiaojing/article/details/44493555版权声明:本文为博主原创文章,转载请附上博文链接!以前最早接触的是SQL Server2005,这个数据库一般适合数据量超大的情况,比如说卫星的星历数据等。后来接触互联网,发现Mysql还是很实用的,中等易用。目前工作中需要使用使用...原创 2018-10-17 18:58:23 · 256 阅读 · 0 评论 -
c++ 操作注册表111
c++ 操作注册表1. 注册表简介注册表是为Windows NT和Windows95中所有32位硬件/驱动和32位应用程序设计的数据文件,用于存储系统和应用程序的设置信息。16位驱动在Winnt (Windows New Technology)下无法工作,所以所有设备都通过注册表来控制,一般这些是通过BIOS(基本输入输出系统)来控制的。在Win95下,16位驱动会继续以实模式方式...转载 2018-10-19 12:51:38 · 226 阅读 · 0 评论 -
使用EPPlus读写xlsx文件
转发:https://www.cnblogs.com/libla/p/5824296.html朋友有个需求,想对N张excel表做过滤和合并的处理,拜托我写个小程序。因为用户的背景是非专业用户,因此最好的选择是写个GUI程序,再加上读写excel的需求,所以我的首选就是C#的WinForm了。经过搜索,读写excel文件有3种方法:采用OleDB读取EXCEL文件 引用的com组件:Microso转载 2018-04-26 16:34:43 · 3159 阅读 · 0 评论 -
using namespace std;
std 是一个命名空间.. 不同的命名空间可以有相同的类名被定义 .. using namespace std; 就是指明下面的程序使用std,如果不用这句指明的话就要用std::string(string是std空间中定义的 也可以在全局空间中定义,只要名字空间不一样即可..).. 否则可以默认名字空间中有std.便不用std::来修饰 它是C++新标准中有的,解决多人作编大程序时名...转载 2018-04-26 13:09:48 · 273 阅读 · 0 评论 -
VC删除类的方法
VC并没有提供删除一个类的简洁方法,我们需要手工删除,但过程并不复杂。 例如,我们有一个CMyButton的类, 对应的文件为MyButton.h和MyButton.cpp, 我们先到工程目录中删除这两个文件, 此时该类信息自动从ClassView中消失, 然后我们按CTRL+W打开ClassWizard, 此时会弹出对话框提示MyButton.h和MyButton.cpp已经不存在了,原创 2017-11-18 16:25:03 · 405 阅读 · 0 评论 -
好软件的十条标准
对于一个用户来说好软件的几条标准: 第一,功能稳定可靠,操作简便易行; 第二,运行流畅,不影响其他软件运行,不会导致电脑越用越慢,当然地更不能携带病毒、非法链接或者一大堆插件; 第三,界面外观大方、大气;色彩协调,一般不会是纯黑、粉红、很鲜艳的蓝、浓重的紫等让人感到刺目的颜色。 第四,一般有正规官方网站,客户需要的话很容易地就能搜索到并且自行下载安装,绝不会在你不知情的时候偷偷给你安到电脑上原创 2017-02-24 23:40:12 · 2493 阅读 · 0 评论 -
应用CImage类用文件和流的方式显示图片和放大缩小图片
应用CImage类用文件和流的方式显示图片和放大缩小图片 1.是MFC工程 2.创建默认工程:单文档工程 3.工程名:JPEGTest 4.1在CJPEGTestView类中添加 HANDLE m_hFile; CImage m_Image; void LoadMemImage( void * pMemData, long len); afx_msg void OnFile转载 2015-08-03 00:59:19 · 533 阅读 · 0 评论 -
静态链接库
http://www.cnblogs.com/chenkai/archive/2013/01/23/2873932.html转载 2015-08-02 00:20:59 · 471 阅读 · 0 评论 -
牛人十个月自学C++ 现在做C#开发工作
我从去年11月份开始自学C++(本人现在做C#开发),现在把我这10来个月学习体会写出来和大家分享。 1。关于要不要学习C++?(结论:要学,一定要学!) 如今在网上很多为要不要学C++争的不可开交,因为现在JAVA,C#,。NET都炒的很火,特别是JAVA,大有炸平庐山,停止地球转动之势。用林锐同志的话说,其实JAVA只是C++外甥,跑到舅舅身上撒了一泡尿而已。首先,我们从JAVA 的来历上来转载 2015-07-30 15:53:08 · 3116 阅读 · 0 评论 -
屏幕设备环境
私有设备环境 创建窗口时,私有设备环境便创建了,并在窗口存在期间一直存在。要使窗口创建一个 私有设备环境,必须在目标窗口的窗口类中设置C S O W N D C标志,这时GetDC( )返回一个私 有设备环境的指针,而不创建一个设备环境。在窗口存在期间,为私有设备环境所作的任何 变化都被保存。私有设备环境主要在以图形为中心的应用程序中使用,在那里经常地分配一 个设备环境,这样会占用非常多的转载 2015-07-18 11:45:38 · 412 阅读 · 0 评论 -
C++对二进制文件的读写操作[c++学习网站]
http://c.biancheng.net/cpp/biancheng/view/260.html转载 2015-07-29 22:21:38 · 425 阅读 · 0 评论 -
二进制文件与文本文件
文本文件编码基于字符定长,译码容易些;二进制文件编码是变长的,所以它灵活,存储利用率要高些,译码难一些(不同的二进制文件格式,有不同的译码方式)。关于空间利用率,想想看,二进制文件甚至可以用一个比特来代表一个意思(位操作),而文本文件任何一个意思至少是一个字符.http://jiadongkai-sina-com.iteye.com/blog/945854http://wenku.baidu.com转载 2015-07-29 01:20:07 · 438 阅读 · 0 评论 -
error C2664: 'CWnd::MessageBoxW' : cannot convert parameter 1 from 'char *' to 'LPCTSTR'的解决方法
2013-03-16 11:55 1182人阅读 评论(0) 收藏 举报我用的是VS2005,在编译MFC时遇到了如下错误:error C2664: 'CWnd::MessageBoxW' : cannot convert parameter 1 from 'char *' to 'LPCTSTR'后来发现解决方法很简单,点击“项目”-》“属性”-》“配置属性”-》“常规”-》“字转载 2015-07-27 12:28:53 · 1190 阅读 · 0 评论 -
VS2010通过OLE操作Excel2010
转自:http://blog.youkuaiyun.com/superbfly/article/details/18040445 我使用的语言是C++,网上有许多这方面的例子,但由于VS与Office版本的问题,都需要一些调整,下面是我在使用时遇到的一些问题集解决方法:操作步骤:a. project->add class->MFC class from typelib 导入Excel.exe,一般都在C:/P转载 2015-07-28 00:57:36 · 553 阅读 · 0 评论 -
C++读取Excel的XLS文件的方法
http://blog.youkuaiyun.com/luvnn/article/details/8084581转载 2015-07-27 18:23:08 · 2620 阅读 · 0 评论 -
CString和CStringA之间的转换
使用UNICODE字符集编程时,总是需要使用那些不支持UNICODE的库,例如sqlite3,Lua等必须使用char*类型的。这个时候用CStringA是最好的。另外CStringA与CString可以灵活地随意转换赋值,注意不能这样用:CString str1;CStringA str2=str1;而要这样用:CStringA str2;str2=str1;转载 2015-07-27 01:34:16 · 835 阅读 · 0 评论 -
大括号扩展插件
http://indentguide.codeplex.com/releases/view/110312转载 2015-08-14 20:44:20 · 569 阅读 · 0 评论 -
c++编译链接
VC 带的编译器名字叫 cl.exe 。其中/ML 、 /MLd 、 /MT 、 /MTd 、 /MD 、 /MDd 。这些选项告诉编译器应用程序想使用什么版本的 C 标准程序库。/ML 对应单线程静态版的标准程序库 (libc.lib) 目标文件到底该链接谁呢,在 cl 编译出的目标文件中会有一个专门的区域存放一些指导链接器如何工作的信息转载 2015-08-04 01:07:13 · 284 阅读 · 0 评论 -
c++编译链接过程
大家都知道,从 C/C++ 源程序到可执行文件要经历两个阶段 : (1) 编译器将源文件编译成汇编代码,然后由汇编器 (assembler) 翻译成机器指令 ( 再加上其它相关信息 ) 后输出到一个个目标文件 (object file, VC 的编译器编译出的目标文件默认的后缀名是 .obj) 中; (2) 链接器 (linker) 将一个个的目标文件 ( 或许还会有若干程序库 ) 链接在一起生成一转载 2015-08-04 00:18:53 · 353 阅读 · 0 评论 -
自动更新原理
需要自动更新的时候,客户端软件提交更新请求给固定的网址,然后网址返回最新版本的版本号。客户端软件和自己的版本号对比,如果发现服务器的版本和自己的版本不一样,那么就请求下载升级补丁。服务器响应请求,提供补丁下载;下载成功后,手动或自动安装一下就可以了。安装补丁的时候,客户端的主程序一般是要关闭的,除非采用动态卸载、调入组件的技术,比如网络游戏,就是尽量让玩家边玩游戏边更新。如果更新的是主程序,那么就必原创 2016-04-15 12:21:13 · 1240 阅读 · 0 评论