随笔分类 -  C++ MFC API

windows下的DDB和DIB
摘要:1、DDB依赖于具体设备:DDB的颜色模式必需与输出设备相一致。例如,如果当前的显示设备是256色模式,那么DDB必然也是256色的。在256色以下的位图中存储的像素值是系统调色板的索引,其颜色依赖于系统调色板。由于DDB高度依赖输出设备,所以DDB只能存在于内存中,它要么在视频内存中,要么在系统内存中DIB的与设备无关性主要体现在以下两个方面:DIB的颜色模式与设备无关。例如,一个256色的DIB即可以在真彩色显示模式下使用,也可以在16色模式下使用。256色以下(包括256色)的DIB拥有自己的颜色表,像素的颜色独立于系统调色板。由于DIB不依赖于具体设备,因此可以用来永久性地保存图象。D 阅读全文

posted @ 2012-03-29 20:22 风尘女子 阅读(540) 评论(0) 推荐(0)

对当前进程进行提升权限
摘要:对于进程提升权限主要用到下面三个API OpenProcessToken();打开权限令牌 LookupPrivilegeValue();检索一个唯一的本地标识符 LUID AdjustTokenPrivileges();调整令牌特权 BOOL OpenProcessToken( HANDLE ProcessHandle, //要修改访问权限的进程句柄 DWORD DesiredAccess, //指定你要进行的操作类型 PHANDLE TokenHandle //返回的访问令牌指针 ); BOOL LookupPrivilegevalue( LPCTSTR lp... 阅读全文

posted @ 2012-02-08 17:26 风尘女子 阅读(204) 评论(0) 推荐(0)

VC中使用CButtonST使用技巧
摘要:CButtonST是一个功能强大的类,他可以产生各种不同风格的 Button按钮,可以在实际开发中使用,CButtonST是控件子绘制的原理 。CButtonST可以从网上下载到源文件 ,下载之后 加入到我们的工程中 。下面是使用方法 。1、创建一个Button控件 并为之 关联一个 Control变量 。2、修改Button控件的父类为 CButtonST//{{AFX_DATA(CXXDlg)enum { IDD = IDD_XX_DIALOG };CButtonSTm_btn; //在控件关联映射宏处修改 基类//}}AFX_DATA3、在Dialog的 OnInitDialog函数中作 阅读全文

posted @ 2012-02-06 10:54 风尘女子 阅读(356) 评论(0) 推荐(0)

windows下的剪切板编程详解
摘要:说道剪切板大家都不陌生吧 ,右键粘贴 都用过。其实编程也很简单,但是在进程之间的通信 却有着不可替代的作用 ,剪切板说白了就是一个缓冲区 ,但是这个缓冲区不是某个进程的私有空间,而被全部进程所共享。windows下的每个进程都可以共享剪切板中的数据 。 其实我以前也学过剪切板编程但是一直没有真正理解,于是又学习了一遍。终于明白了。。。写下来分享下。。。。要使用剪切板就要了解剪切板的几个函数 ?BOOL EmptyClipboard(VOID); //清空剪切板并且释放与剪切板相关的数据的句柄 BOOL OpenClipboard( HWND hWndNewOwner ); //打开剪切板... 阅读全文

posted @ 2012-01-19 19:09 风尘女子 阅读(420) 评论(0) 推荐(0)

模拟windows任务管理器列举系统进程,并关闭进程......
摘要:其实对于 windows进程的操作很简单,只要理解了 进程线程的概念 对于 进程的操作 那么就只是 几个函数的 问题了 。下面是 对于进程操作要用到的几个函数 。进程的概念:我们运行了一个程序,那个这个独立的程序就是一个进程。进程有自己的私有地址空间,进程中的线程共享这些私有地址空间 。在一个进程中多个线程共同完成一项功能,可以提高工作的效率。HANDLE WINAPI CreateToolhelp32Snapshot(//这个函数创建一个系统进程列表的快照 并返快照的句柄 用于操作 DWORD dwFlags, DWORD th32ProcessID );BOOL WINAPI Proce. 阅读全文

posted @ 2012-01-18 14:53 风尘女子 阅读(550) 评论(0) 推荐(0)

动态链接库的简单应用
摘要:动态链接库是windows下实现数据共享的一种重要方法,它提供了 二进制层上的共享。 动态链接库 可以很好的实现 项目模块之间的分离,如果某一模块出错不需要重新编译整个项目,只需要修改相应的模块 ,以及在产品的升级过程中 我们可以通过替换dll文件来实现产品的升级.动态链接库包含2个文件 lib因入口 和dll动态链接库 ,我们在程序中通过已入库 来调用dll文件中 存储的函数 。DLLMain函数 是DLL文件的入口函数 在dll进行初始化或者释放的时候都会调用这个函数,相对应的就是 LoadLibrary和 FreeLibrary 函数在动态链接库中只有 指定为 _declspec(exp 阅读全文

posted @ 2012-01-18 12:33 风尘女子 阅读(158) 评论(0) 推荐(0)

VC增加应用程序图标到系统托盘
摘要:文对如何将应用程序的图标加入到Windows的系统托盘中做了较为详细的介绍,然后给出了一个C++类以方便的实现该功能,并在VC++6.0中给出了一个应用程序实例来体现其具体实现过程。同时该应用程序实例还讲解了如何在托盘中实现动画图标以及在程序中关闭计算机的技术。 关键词:系统托盘 动画图标 Windows98桌面的系统托盘位于任务栏的右侧,即Windows98桌面的右下方。它常用来显示一些系统的状态。如:系统时间,音量控制以及其它的一些图标(依个人机器安装的软件而不定),如下图为笔者的Windows98系统托盘。(图略) 常常能见到一些优秀的软件在运行后会将其应用程序图标加入到系统托盘中,如金 阅读全文

posted @ 2011-12-07 21:04 风尘女子 阅读(327) 评论(0) 推荐(0)

今天给同学写5个数据结构算法的题...感觉很有价值的几个题..感兴趣的坐下。。
摘要:1.判断一个顺序表是否对称2用向量作存储结构,设计以算法仅用一个辅助结点,实现将线性表中的结点循环右移k位的运算3.已知A【n】中的元素为整形。设计算法将其调整为左右两部分。左边所有元素为奇数,右边所有元素为偶数,4,设计以算法,逆置带头结点的动态链表L,5单链表以非递减有序排列,设计算法实现在单链表中删去值相同的多余结点,6假设有两个按元素值递增有序排列的线性表A和B,均以单链表作存储结构,是编写算法将A表和B表归并成一个按元素值递减有序排列的线性表C,并要求利用原表的结点空间存放C我写的代码如下1 、/*要求 :判断一个顺序表是否对称 */#include <iostream> 阅读全文

posted @ 2011-11-13 21:25 风尘女子 阅读(376) 评论(0) 推荐(0)

导航