- 博客(13)
- 资源 (1)
- 收藏
- 关注
转载 RGB转灰度图的几种算法
方法一: 对于彩色转灰度,有一个很著名的心理学公式: Gray = R*0.299 + G*0.587 + B*0.114 方法二: 而实际应用时,希望避免低速的浮点运算,所以需要
2011-08-01 00:57:37
23867
转载 引用MFC指针的获取(转载)
<br />chilli 的 MFC指针的获取<br />1、获取应用程序指针<br />CMyApp* pApp=(CMyApp*)AfxGetApp();<br />2、获取主框架指针<br />CWinApp 中的公有成员变量 m_pMainWnd 就是主框架的指针<br />CMainFrame* pMainFrame = (CMainFrame*)(AfxGetApp()->m_pMainWnd);<br />或者<br />CMainFrame* pMainFrame = (CMainFrame
2010-09-27 13:29:00
912
转载 分组密码加密模式
<br />为了对长度超过密码算法分组大小的明文进行加密,设计到分组密码的工作模式的问题,简单说就是分组块进行加密时的链接关系。也可以理解为密码算法如DES,AES等解决的是一个分组长度的明文加密成密文的过程,而对于任意长度的明文的加密过程则以加密算法为基础,并在某种工作模式下来完成加密过程。因而单独说此数据采用什么算法加密的是没意义的,同样是aes加密,模式不一样时,密文不一样。有了密文,有了密钥,不知道加密模式的话一样无法解密。<br /><br />分组密码的工作模式主要有<br />(1)电子密码本
2010-08-14 00:47:00
4568
转载 部署VC2008应用程序
<br />如果你编译了一个VC2008的默认的CRT/MFC的应用程序,如果目标部署电脑上没有安装相应的VC2008的动态库,当运行你的程序的时个,会出现如下错误信息.<br /> <br />这是因为程序使用了基于VC2008的CRT/MFC的动态库版本.<br />解决这个问题,有三种方法:<br />1.使用静态链接库编译(缺点,生成的exe的程序过于庞大)<br />2.使用vcredist_x86.exe / vcredist_x64.exe 将VC2008的发行版的DLL安装在你的系统上.(缺
2010-08-03 12:53:00
798
转载 内存映射文件的工作原理及使用方法
Win32 API提供了一种进行文件操作的高效途径,即内存映射文件。内存映射文件允许在Win32进程的虚拟地址空间中保留一段内存区域,把目标文件映射到这段虚拟内存之中。可以用存取内存数据的方式,直接操作文件中的数据,就像这些数据放在没存中一样。而实际上,我们并没有、也不需要调用API函数来读写文件,更不需要自己提供任何缓冲算法,操作系统将会完成这些工作。使用内存映射文件能给程序开发工作提供极大方便,程序的运行效率也很高。内存映射文件在Windows NT和Windows 95中的实现机制略有不同,下
2010-08-01 01:03:00
1274
原创 分页与非分页内存
在写驱动的时候,经常要调用ExAllocatePoolWithTag函数分配内存,其中第一个参数可以是如下几个: NonPagedPool 从非分页内存池中分配内存 PagedPool 从分页内存池中分配内存 NonPagedPoolMustSucceed 从非分页内存池中分配内存,如果不能分配则产生bugcheck NonPagedPoolCacheAligned 从非分页内存池中分配内存,并确保内存与CPU cache对齐 NonPagedPoolCacheAligne
2010-07-30 18:42:00
1154
原创 内存映射文件使用详细
<br />摘要: 本文通过内存映射文件的使用来对大尺寸文件进行访问操作,同时也对内存映射文件的相关概念和一般编程过程作了较为详细的介绍。<br /><br /> 关键词: 内存映射文件;大文件处理;分配粒度 <br /> 引言<br /> 文件操作是应用程序最为基本的功能之一,Win32 API和MFC均提供有支持文件处理的函数和类,常用的有Win32 API的CreateFile()、WriteFile()、ReadFile()和MFC提供的CFile类等。一般来说,以上这些函数可以满足大多数场合的
2010-07-30 18:05:00
628
转载 VC++实现Vista和Win7系统低权限程序向高权限程序发消息
typedef BOOL (WINAPI *_ChangeWindowMessageFilter)( UINT , DWORD);BOOL CVistaMsgRecvApp::AllowMeesageForVista(UINT uMessageID, BOOL bAllow)//注册Vista全局消息{ BOOL bResult = FALSE; HMODULE
2009-11-23 18:00:00
845
原创 开发日志一:前期准备Ogre与irrlicht(食人魔vs 鬼火)
写在之前的话:写这篇文章的时候,游戏引擎的单机部分开发已经差不多一半,一些工具也陆陆续续的出现。我只有一个感慨,这个工程是在是太浩大了,从网格模型的组织,射线碰撞件检测,高度图,材质,贴花,GUI,玩家,战斗模式,AI,物件,嵌入的脚本系统,3D音效等。终于,我们被迫停下来了,需要对整个系统进行修改重新设计(最坏情况),虽然最初我们也是本着面向接口,面向组件的实现进行设计,但是由于大量技术细节
2008-11-26 17:18:00
4478
转载 Windows环境下Unicode编程总结
UNICODE环境设置 在安装Visual Studio时,在选择VC++时需要加入unicode选项,保证相关的库文件可以拷贝到system32下。 UNICODE编译设置: C/C++, Preprocessor difinitions 去除_MBCS,加_UNICODE,UNICODE 在
2008-10-22 23:15:00
667
原创 简单明了的boost编译过程
在网上找了不少资料,发现说的都比较笼统,我简明一下,呵呵,大家不要在编译过程中重复浪费时间哈。针对windows用户VS编译一:先编译bjam程序启动命令行进入../boost_1_36_0/tools/build/jam_src目录运行build即可运行结束后,将新出现bin.ntx86目录,我们所需要的bjam.exe就在该目录下。二:编译库boost得到bjam.ex
2008-10-14 13:11:00
804
转载 CInternetSession的简单使用
CInternetSession session;CHttpFile *file = NULL; CString strURL = " http://www.ourjsj.com";CString strHtml = "”; //存放网页数据 try{ file = (CHttpFile*)session.OpenURL(strURL);}catch(C
2008-10-13 19:25:00
513
转载 C++ string祥解
之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必 担心内存是否足够、字符串长度等等,而且作为一个类出现,他集成的操作函数足以完成我们大多数情况下(甚至是100%)的需要。我们可以用 = 进行赋值操作,== 进行比较,+ 做串联(是不是很简单?)。我们尽可以把它看成是C++的基本数据类型。 好了,进入正题………首先,为了在我们的程序中使
2008-08-28 16:14:00
509
STL入门教程.chm
2008-12-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人