摘要: 1. DLL的接口必须在.def中声明,否则VB无法调用。根据已有资料,.def文件完成的作用是与extern "C"相同,也就是说如果在接口定义的头文件中使用了extern "C",则不需要在.def中声明。在实际中,供C++、C#和Java调用的DLL都只需要使用extern "C"来声明接口即可,VB应属一个特例,具体原因尚不清楚。 2. VB声明原型时,对值类型参数时,传入参数需用ByV... 阅读全文
posted @ 2010-11-16 22:30 泉子 阅读(2413) 评论(0) 推荐(0) 编辑
摘要: 注:此文在互动出版网的译文基础上修正了少数翻译问题,额,鉴于我的E文水平,也不排除改动后译得更烂的可能性。原版权信息如下: 组织:中国互动出版网(http://www.china-pub.com/) RFC文档中文翻译计划(http://www.china-pub.com/compters/emook/aboutemook.htm) E-mail:ouyang@china-pub.com ... 阅读全文
posted @ 2010-10-11 15:36 泉子 阅读(695) 评论(0) 推荐(0) 编辑
摘要: 1. 前言.NET framework为计算机配置,应用程序配置和安全等信息定义了一组标准配置文件,这些配置文件的内存映射及存取由Configuration程序集支持。对于某些大型应用系统及专业领域软件而言,配置信息的编制和维护是一件复杂的事情。前阵子因为工作关系,借助Configuration程序集,设计了一个简单的定义配置信息结构的模型(简单得不能称为框架)和维护工具。虽然由于换工作而没有用上... 阅读全文
posted @ 2010-09-20 15:06 泉子 阅读(781) 评论(1) 推荐(0) 编辑
摘要: 1. 背景首先,我们的产品是一个桌面程序,目前配置文件使用的是ini文件格式。在产品维护过程中,随着配置项不断扩充,配置文件逐渐地变得宠大和混乱,加之ini文件的层次性和可读性不够强,致使配置文件的可维护性越来越差。客户的增多和配置项的臃肿,让发布程序时维护初始配置的工作变得难以忍受。另一方面,在程序中,软件配置信息映射为一个静态类,每个配置项作为一个静态成员。这相当于一个一维结构,其层次甚至还不如ini文件的结构,好歹ini文件还分段了。写代码时,就算有智能感知,要从下拉列表中找到自己需要的那个配置项也是一项考验眼力和键盘上下键质量的工作。更糟糕的是,假如某个开发人员需要增加一个配置项,那么 阅读全文
posted @ 2010-09-18 13:15 泉子 阅读(1604) 评论(0) 推荐(0) 编辑
摘要: 原文链接:http://blog.csdn.net/gogor/archive/2010/02/24/5323599.aspx 我们知道,计算机只能识别诸如0101这样的二进制数,于是人们必须以二进制数据与计算机进行交互,或者先将人类使用的字符按一定规则转换为二进制数。 那什么是字符呢?在计算机领域,我们把诸如文字、标点符号、图形符号、数字等统称为字符。而由字符组成的集合则成为字符集,字符集由于... 阅读全文
posted @ 2010-09-14 13:31 泉子 阅读(1913) 评论(0) 推荐(1) 编辑
摘要: 前阵子想改进产品的配置文件结构,因此研究了一下Configuration程序集,看看能不能用来做基础,现总结如下。 1. 概述 在.NET Framework中,微软提供了Configuration程序集,包含用于处理配置数据的编程模型的类型。 1.1 基本结构 Configuration的基本结构如下: ConfigurationManager是配置信息的读写类,对于一些内置的配置信息,... 阅读全文
posted @ 2010-09-11 20:48 泉子 阅读(4187) 评论(3) 推荐(0) 编辑
摘要: MFC通过_AFXEXT来决定AFX_EXT_CLASS等宏应编译为导出还是导入。扩展DLL的项目预定义有_AFXEXT宏,因此,AFX_EXT_CLASS被编译为导出类;非扩展DLL项目不带有_AFXEXT宏,因此, AFX_EXT_CLASS被编译出导入类。同一个文件中的符号在不同的工程被编译为不同的涵义,这就是使用扩展DLL的项目中能够直接使用扩展DLL定义的头文件的原因。 问题则是,当一... 阅读全文
posted @ 2010-09-04 17:43 泉子 阅读(1085) 评论(0) 推荐(0) 编辑
摘要: 前注: 这是自己平时写的一些小代码,未必有用及符合设计原则,若有不妥之处,还请大家指教。 说明: 虽然INI这种配置文件早已不被微软所推荐,但至少在VC6下用C++编写一些小程序时,用INI还是有其长处的:简单的INI要比简单的XML更加直观(当然在复杂情况则相反);Windows提供了专门的API来读写INI配置,只需一条语句即可。 不过在最近写的几个小程序中,也发现了私有配置文件读写API... 阅读全文
posted @ 2010-09-01 18:05 泉子 阅读(1064) 评论(3) 推荐(0) 编辑
摘要: 目前使用的Visual Studio 6.0的MFC4.2使用的是Winsock1.1,听说MFC7.1中使用的也是。 最近,为了使用WSAIoctl,需要把使用Winsock2,不过不能直接在项目中Include Winsock2.h,因为Winsock2.h是Winsock.h的一个超集,直接添加会与已包含的winsock.h发生命名冲突。 在网上参考了一些相关的资料,最后将MFC中引用的... 阅读全文
posted @ 2010-08-26 23:38 泉子 阅读(2526) 评论(0) 推荐(0) 编辑
摘要: 手头有个C++的DLL,是公司的一个远程通话功能组件。长久以来,这个DLL对外只有三个操作接口。而从合理的角度来说,这个DLL本应再提供一些回调接口或事件之类的东西,用于在通话状态被动改变时通知外层应用程序。不过银行里的规矩多多,不能用ActiveX;而使用回调,却又似不那么的稳定,尤其在与C#交互时。所以才一直就这么用着。 直到最近,外层应用程序的开发人员提意见抱怨这个DLL。于是,一狠心,决... 阅读全文
posted @ 2010-08-24 14:06 泉子 阅读(2975) 评论(0) 推荐(0) 编辑