C/C++/VC
foxmail
这个作者很懒,什么都没留下…
展开
-
如何在程序中动态设置墙纸
标题 如何在程序中动态设置墙纸 zwvista(原作) 关键字 Wallpaper IActiveDesktop 大家都知道设置WINDOWS桌面墙纸的WIN32 API是SystemParametersInfo, 使用SPI_SETDESKWALLPAPER参数便能设置墙纸: ::SystemParametersInfo(SPI_SETDESKWALLPAPER原创 2004-06-25 16:54:00 · 3012 阅读 · 1 评论 -
delete this,dll导出类及如何写plugins(PART II) [转]
2.dll导出类的几种方法。其实我就知道两种啦,还请大家补充。先看M$使用的方法。struct exports{__declspec(dllexport)exports();__declspec(dllexport)~exports();};exports::exports(){}exports::~exports(){}优点:完全和本地的类一样使用,可以直接new/delete.缺点:只能使用自原创 2004-09-29 13:57:00 · 1567 阅读 · 0 评论 -
delete this,dll导出类及如何写plugins(PART III) [转]
3.实现plugins。有了前两章的基础,这个就比较好办了。先了解一点点基本概念:Q:what is pluginsA:就是通过加载不同的dll实现不同的功能,或者附加的功能,典型的如模拟器的各种插件(显示,input...)。Q:why we use pluginsA:主要为了使程序模块化,并且容易扩充。升级组件时不需要重新发布整个产品。Q:how to do it?A:使用LoadLibrar原创 2004-09-29 13:59:00 · 2399 阅读 · 1 评论 -
delete this,dll导出类及如何写plugins(PART I) [转]
1.为什么要使用delete this,以及如何使用。(1)考查这样的情况:有两个对象A,B需要访问同一个多态对象C。因为C一般是通过new 操作构造的,一定要自己释放,但是对象A,B都需要使用它,并且B不知道A什么时候使用完成C,A也不知道B什么时候使用完成C(当然可以用函数通信的方法通知了,不过是一个比较丑陋的实现方法),所以不能在A/B中间来delete,一个折中的办法是在程序退出的时候来d原创 2004-09-22 15:09:00 · 1730 阅读 · 0 评论 -
从C++向COM演进[转]
我们要解决的问题是复用问题,我们的目标:(1) 当被复用的软件升级时,客户程序不需要重新编译。(2) 被复用的软件应该容易扩展和升级。(3) 在客户能正常使用复用组件功能的基础上,组件向客户暴露尽可能少的信息。(4) 尽可能是客户使用组件更加方便,将许多繁琐复杂的工作从客户端转移到组件内部。==》所有可以在组件内部完成的事情,决不在组原创 2004-09-22 14:42:00 · 1389 阅读 · 0 评论 -
关于23种设计模式的有趣见解(转)
创建型模式 1、FACTORY—追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory 工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:如何创建及如原创 2004-11-05 14:51:00 · 2297 阅读 · 0 评论 -
VC中特殊字体的实现(转)
渐变字:// 获得窗口的客户区设备上下文句柄 CClientDC dc(this); // 更改当前字体 LOGFONT lf; dc.GetCurrentFont()->GetLogFont(&lf); CFont font, *pOldFont; lf.lfCharSet=134;原创 2004-11-05 14:52:00 · 3260 阅读 · 0 评论 -
金山词霸2003导致我的程序堆栈溢出错误
最近发现金山词霸屏幕取词功能导致连连看在ET内执行的时候堆栈溢出而连连看单机版则无此问题。郁闷异常,分析金山词霸的取词功能如下:1 屏幕抓词 屏幕抓词(或者叫动态翻译)是指随着鼠标的移动,软件能够随时获知屏幕上鼠标位置的单词或汉字,并翻译出来提示用户。它对於上网浏览、在线阅读外文文章等很有帮助作用,因此许多词典软件都提供了屏幕抓词功能。 屏幕抓词的关键是如何获得鼠标位置的字符串,Windo原创 2004-11-18 16:11:00 · 3588 阅读 · 2 评论 -
VC++开发BHO插件——定制你的浏览器
VC++开发BHO插件——定制你的浏览器 作者 陆其明 关键字 BHO Browser COM ATL 网址过滤原作者姓名 陆其明 读者评分 5 评分次数 1 正文在Windows操作系统上,我们最常见的浏览器有两种:文件浏览器(exploer.exe,应用于文件系统)和Internet浏览器(iexplore.exe,应用于互联网资源)。由于这两个浏览器功能强大,而且又与Windows操作系统原创 2005-07-01 15:25:00 · 2823 阅读 · 0 评论 -
C++: The Most Powerful Language for .NET Framework Programming
http://msdn.microsoft.com/visualc/default.aspx?pull=/library/en-us/dnvs05/html/VS05Cplus.asp原创 2004-08-19 23:04:00 · 1588 阅读 · 0 评论 -
C++回调函数的处理
由于DDEML机制需要使用回调函数,因此使用DDEML的关键是解决在MFC编程体系中回调函数的使用。回调函数(Callback function)大量用于Windows的系统服务,通过它,程序员可以安装设备驱动程序和消息过滤系统,以控制Windows的有效使用。许多程序员都发现,利用MFC或者其它的C++应用编写回调函数是非常麻烦的,其根本原因是回调函数是基于C编程的Windows SDK原创 2004-07-03 22:26:00 · 4242 阅读 · 0 评论 -
程序控制桌面切换
用向导建立一个Win32程序“hello, world!”,然后用下面的内容替换整个CPP文件内容就可以了 #include "stdafx.h"#include "resource.h" #include "ShellApi.h" HINSTANCE hInst = NULL; HDESK hDesktopCurrent;HDESK hDesktopLlx; LONG APIENTRY WndP原创 2004-06-25 19:10:00 · 1890 阅读 · 0 评论 -
VC++ 的串口通讯
VC++ 的串口通讯 代翔 在VC++中有两种方法可以进行串口通讯。一种是利用Microsoft公司提供的ActiveX 控件 Microsoft Communications Control。另一种是直接用VC++访问串口。下面将简述 这两种方法。 一、Microsoft Commun原创 2004-06-25 16:49:00 · 2713 阅读 · 0 评论 -
超级菜鸟 DirectX 8 游戏编程入门讲座(转贴)
原著(日)前田 稔[HomePage]http://www.cong.ac.jp/~maeda/[E-Mail]maeda@cong.ac.jp翻译(中)燕尘[HomePage]http://www.yanchen.com/[E-Mail]vagra@sina.com 目 录 超级菜鸟入门讲座全屏模式编程实例窗口模式编程实例 超级菜鸟入门讲座 §01. DirectX 8 的安装转载 2004-06-27 23:50:00 · 2118 阅读 · 2 评论 -
在win2000、winXP下看 **********
本文将讲述如何在win2000下如何编程实现得到应用程序中的密码框中的密码及网页密码框中的密码记得在win98的时候,只要向一个密码框发一个WM_GETTEXT的消息就可以很容易的得到了其中的密码,微软可能已经意识到了,这一个不安的因素,在win2000/xp中,像以前那样写一个应用程序,向别的程序的密码框简单的发送一个WM_GETTEXT的消息就得到密码了,原因是在进程间数据是相互隔离的,如果参原创 2004-07-29 23:08:00 · 1566 阅读 · 1 评论 -
在Visual C++中如何利用UDL文件来建立ADO连接
使用通用数据连接文件(*.UDL,以下简称文件)来创建ADO连接,可以和ODBC一样可视化地定义要连接的数据源,从而实现数据访问的透明性。 1.使用UDL文件来创建ADO连接 创建ADO的连接,首先要设置ADO连接对象的ConnectionString属性,该属性提供所要连接的数据库类型、数据所处服务器、要访问的数据库和数据库访问的安全认证信息。比较专业的方法是在Connection原创 2004-06-25 14:35:00 · 1078 阅读 · 0 评论 -
数据类型转换合集
刚接触VC编程的朋友往往对许多数据类型的转换感到迷惑不解,本文将介绍一些常用数据类型的使用。 我们先定义一些常见类型变量借以说明 int i = 100;long l = 2001;float f=300.2;double d=12345.119;char username[]="女侠程佩君";char temp[200];char *buf;CString str;_variant_t v1;_原创 2004-06-25 15:53:00 · 1077 阅读 · 0 评论 -
剖析VC中的文件操作
剖析VC中的文件操作 作者:发表日期:2001年12月 日转自: 内容提要 关键字 文章正文 各种关于文件的操作在程序设计中是十分常见,如果能对其各种操作都了如指掌,就可以根据实际情况找到最佳的解决方案,从而在较短的时间内编写出高效的代码,因而熟练的掌握文件操作是十分重要的。本文将对Visual C++中有关文件操作进行全面的介绍,并对在文件操作中经常遇到原创 2004-06-25 16:41:00 · 1503 阅读 · 1 评论 -
如何得到其它进程的启动命令行参数 (转)
如何得到其它进程的启动命令行参数 ILSY:这个程序可以得到其他进程的命令行参数。// procmdline.cpp (Windows NT/2000)//// This example shows how to get the command line for almost any process// on the system for Windows NT/2000// //// (c)19原创 2005-08-12 10:54:00 · 4798 阅读 · 1 评论