关于Visual Basic 6.0类开发(下) (转)
关于Visual Basic 6.0类开发(下) (转)[@more@]关于Visual Basic 6.0类开发(下)2001-02-03· 新天·yesky 在Visual Basic 6.0类的技术与应用(上)(以下简称上文)中,我们讨论了类的理论、类的创建和类的方法的编程实践,实际上,类之所以能够在软件工程中广泛应用,最主要的一点是它可以非常方便的封装许多编程需要的属性,这不仅使程序员在一定程度上克服控件(ocx)和链接库(dll)设计和调试中的复杂性,而且能够提高程序代码的简洁和高效性――本文将讨论完整的类的编程,包括方法、属性和基本事件。 (一)类的属性的
关于Visual Basic 6.0类开发(上) (转)
关于Visual Basic 6.0类开发(上) (转)[@more@]关于Visual Basic 6.0类开发(上)2001-02-03· 新天·yesky 对程序员和编程爱好者来说,VB中类的技术是学习中的一个难点,在大型软件的开发过程中,模块(Moudle)、控件(Active ocx)、链接库(Active dll)和类(Class moudle)构成了系统化、高效化的软件工程,而类的技术是控件和链接库技术的基础,因此掌握类的理论和编程方法是非常有意义的。(一)类的基本定义和应用概述; 类是包含了方法、属性、数据成员的高级代码模块,它既在模块的范畴之内,又是一个没有图形界面的Active
VB==这个玩笑有点酷 (转)
VB==这个玩笑有点酷 (转)[@more@]这个玩笑有点酷2000-10-18· 不详·yesky 此程序演示怎样在VB中调用api修改注册表,让程序每次启动都会执行,运用shell函数,操做文本文件,屏蔽系统功能,做出一个能够修改系统的程序(当然能和你的朋友开个玩笑),并且用事件key_press接收密码来关闭程序。 模块中声明: ’创建子键 Public Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" _ (ByVal hKey As Long, ByVal lpSubKey As String, _ phkResult As Long) As Long ’创
用VB“破解”有时间限制的程序 (转)
用VB“破解”有时间限制的程序 (转)[@more@]用VB“破解”有时间限制的程序张 胜 你是否经常遇到有时间限制的程序?我等懒人尤其对此特别反感,可惜囊中羞涩,只好反复修改其系统日期而使自己多用几次此软件——实在是辛苦!于是使用“Anyday32”,可惜也太麻烦了;再后使用“时光倒流”,也不好用,而且——居然还有bugs!......看样子只好自己动手做“VB软件DIY”了。 一、问题所在 有时间限制的程序大都是依靠在启动过程中检测系统日期,再与其记录的第一次使用日期(放于注册表或特殊文件中)进行对比检测是否试用期已到,若试用期
大型WAV文件的播放 (转)
大型WAV文件的播放 (转)[@more@]大型WAV文件的播放 在多媒体软件的设计中经常要处理声音文件,用windows提供的api函数sndPlaySound可以实现小型WAV文件的播放。但是当WAV文件大于可用内存时,sndPlaySound函数就不能进行播放,那么如何利用MCI播放大型音频文件呢?本文将介绍一种方法。Windows支持两种RIFF(resource interchange file format,“资源交互文件格式”)音频文件:MIDI的RmiD文件和波形音频文件格式WAV文件,本文将介绍如何用MCI命令播放大型WAV文件。用sndPlaySound播放音频文件只需要一行代码。比如实现异步播放的方法为snd
Use Case的作用 (转)
Use Case的作用 (转)[@more@] 1、Use Case的作用: 我个人认为Use Case仅仅用来反映用户需求,并且在对象分析过程中,能够起到一个查漏补缺的作用。但是使用“先确定Use Case,再指认对象”实在是一种愚蠢的方法(恕我直言)。我个人认为,指认对象使用Yourdon在《Objuect Oriented Analysis》中提到的使用CheckList的方法在实践中是比较实用的。我近来读到的几本书,也印证了我的想法。就我我个人在实践中的经验,使用“首先确定Use Case”策略,非常容易导致分析员滑入“功能分解”的泥沼。而且从Use Case来导出对象
嵌入式系统设计和Windows CE (转)
嵌入式系统设计和Windows CE (转)[@more@] 正是CE和其它全功能的嵌入式系統的時候了。利用相應較高級別的集成、較低的成本來減少任務,以及增加的性能都使得全新的應用成為可能。 在PDA上咝械
需求变更 (转)
需求变更 (转)[@more@] 关于需求变更对软件结构的冲击,我想如果使用面向对象方法效果会好一些。Yourdon在《object Oriented Analysis》中有一个被人广泛引用的结论。就是对于软件结构言,最容易变化的首先是流程,其次是接口,在次是对象的属性,最后才是对象本身。拿一个单位的人事管理系统来举例子,最容易变的肯定是流程,单位的一道文件就可能改变比如入职,辞职,调动等等流程。接口的易变性要小一点,比如原来的脱机接口变成联机接口,增加一些额外的用户界面,报表生成等等。对象的属性(包括对象之间的关系)其实就很不容易
微软智囊团揭秘 (转)
微软智囊团揭秘 (转)[@more@]担负突破现有操作系统重任--微软智囊团揭秘 去年夏天,早在微软提出它的雄心勃勃的.NET战略时,在将它的windows操作系统移植到Internet上以前,总裁盖茨就已着眼于新的挑战了。 盖茨想用人直接与机器对话的界面,来取代基于鼠标点击的操作系统。尽管让机器直接和人们对话的念头其实和星际旅行的梦想一样古老,但一旦成功后,它的意义将彻底不同于微软用Windows来取代DOS操作系统。 但是当开始实施这样计划时,盖茨马上意识到在微软总部没有任何人能处理这项工作,这里所有的用
亚马逊的八条出路 (上) (转)
亚马逊的八条出路 (上) (转)[@more@]亚马逊的八条出路 (上) 田晖宁 从与Barnes&Noble网上书店结盟到征召通用电气前首席执行官杰克·韦尔奇,这里有一些招数可以帮助亚马逊真正实现赢利。 关于亚马逊的业务模式的问题,几乎没有人有异议:这种模式并不奏效。亚马逊公司2000年在营业额达到了28亿的情况下亏损了14亿,换句话说亚马逊每销售2美元的商品就亏损1美元。亚马逊的计划一直是先亏后赚,快速增长,最终以销售额的最大化实现赢利。 然而到了今天,已经开展了六年的业务的亚马逊却宣布销售额增长骤降至30%,同去
创建位图菜单 (转)
创建位图菜单 (转)[@more@]创建位图菜单 在通常的程序中菜单总是以文本的方式存在,有时候显得非常单调乏味。如果能够在菜单中加入位图图形,将会极大地增加用户的使用兴趣。本文介绍了如何使用位图制作菜单选项。 创建位图菜单 ----创建位图菜单其实非常简单,它需要用到windows应用程序编程接口(api)的一些菜单函数和位图函数,你需要将这些函数的声明包含在你的应用程序的标准模块中,具体的内容请参见样例程序。步骤如下: 使用函数GetSubMenu来提取子菜单项的句柄,并通过使用函数CreateCompatibleDC来创建一个兼容的设
非Access数据库在VB的编程及应用 (转)
非Access数据库在VB的编程及应用 (转)[@more@]非Access数据库在VB的编程及应用 摘 要 Visual Basic 有 着 强 大 的 数 据 库 存 取 能 力 , 不 仅 能 够 直 接 支 持 Ms Access 数 据 库 , 而 且 通 过 其 内 部 安 装 的 ISAM 驱 动 程 序 使 它 能 间 接 支 持 FoxPro 、 dbaSE 等 外 来 数 据 库 。 本 文 不 仅 从 vb 数 据 库 体 系 结 构 的 角 度 探 讨 了 VB 对 这 些 外 来 数 据 库 的 支 持 , 还 结 合 了 一 些 实 例 具 体 阐 述 了 使 用 数 据 库 存 取 对 象 变 量 的 方 法 实 现 这 些 外 来 数 据 库 的 新 建 、
用VB5.0设计E-Mail程序 (转)
用VB5.0设计E-Mail程序 (转)[@more@]用VB5.0设计E-Mail程序前言随着计算机网络的发展,人与人之间信息传输的时间大为缩短。许多文件都是以电子邮件的形式来传送;通常使用过计算机的人,或多或少都会用到E-mail来传输信息。本文将介绍如何用microsoft Mapi (Messaging Application Program Interface)来设计Mail程序。首先用Visual Basic所提供的MAPISession control及MAPIMessage control 来设计Mail收发程序,然后用Microsoft Inte.NET Explorer 3.0所提供的E-Mail程序来测试程序设计的正确性MAPI简介MAPI接口是由微软公司提供的一系列
开发Web应用程序中Cookie使用的问题 (转)
开发Web应用程序中Cookie使用的问题 (转)[@more@] 问:我想在一个Actionitem中增加cookie,然后sendredirect到另一个actionitem在那里验证cookie,有cookie这显示一个页面,否则返回。但我发现增加完cookie后,如果马上sendredirect则另一个actionitem取不到cookie值(说明cookie增加不成功),若不马上sendredirect而是response.content:='某一页面内容',然后用户点击连结到另一ActionItem则可以成功读出cookie。XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> 答:Cookie是一个Response的头(h
G65SC802 与 G65SC816 指令集(按字母顺序排列) (转)
G65SC802 与 G65SC816 指令集(按字母顺序排列) (转)[@more@]G65SC802 与 G65SC816 指令集(按字母顺序排列) Mailto:hdw1978@kali.com.cn">hdw1978提供 收稿日期 2000-07-25 20:15:08 ( 非常感谢 hdw1978 的第二次投稿. --汇编工作室) --------------------------------------------------------------------------------- //以下指令未经特殊说明,一律以内存值和累加器值(二操作数指令),内存或累加器值(单操作数指令)作为操作数。ADC 带进位加法AND ‘与’操作ASL 左移一位BCC(BLT) 有进位(Pe=0)时分支BCS(
垃圾收集机制(Garbage Collection)批判 (转)
垃圾收集机制(Garbage Collection)批判 (转)[@more@]垃圾收集机制(Garbage Collection)批判 在Java版发表这篇文章,似乎有点把矛头指向Java了。其实不是,GC是所有新一代语言共有的特征,Python, Eiffel,C#,Roby等无一例外地都使用了GC机制。但既然Java中的GC最为著名,所以天塌下来自然应该抗着。 这篇短文源于comp.lang.java.programmer跟comp.lang.c++上发生的一场大辩论,支持C++和Java的两派不同势力展开了新世纪第一场冲突,跟贴发言超过350,两派都有名角压阵。C++阵营的擂主是Pete Becker,ACM会员,Dinkumware Ltd. 的技术副
Garbage Collection 一直在执行? 还是需要时才启动? (转)
Garbage Collection 一直在执行? 还是需要时才启动? (转)[@more@] (作者 : 艾群科技 萧松瀛) 内存对於 Java 来说,往往是非常珍贵的资源,虽然现在的内存很便宜,随随便便几百 MB 不过几千块台币,但是如果我们能够掌握一些记忆体的状况,那么就不会写出 memory monster 的程式,我想,如果您使用 j2me 或是其他内存不够的周边,那么我想你就可以深深的体会出这句话的意义。而 Java 与内存,我们不得不再度提到 Garbage Collection ,事实上,许多人可能会以为 Garbage Collection 是有需要的时候才执行,实际上并不是
在应用程序中实现RAS拨号 (转)
在应用程序中实现RAS拨号 (转)[@more@] 在应用程序中实现RAS拨号 王涛 远程访问服务(RAS)是windows NT操作系统提供的系统服务之一, 通过电话线可以使单独的计算机接入网络,或通过两个RAS对拨使两个 局域网互连。此项服务的功能可以使远程的计算机端点以较低的费用同网络连接。 由于windows NT操作系统的大量使用,远程访问服务功能也被广泛应用,在许多具体的应用程序中,均已通过远程访问服务来实现对远程的资源共享等功能。连通远程访问服务,只要从远程客户机拨通拨号网络就可以了,执行挂断就结束连接,鼠标操作Windows 9 5中的拨号网络可
C++编程易范的错误 (转)
C++编程易范的错误 (转)[@more@] C++编程易范的错误 摘自《windows 95编程指南》,[美]Stephen R.Davis 著 C/C++语言中有许多对初学者(甚至是有经验的编程人员)来说很容易范的错误。通晓这样的错误可使你免于陷入其中。忘记初始化指针 这种错误只是一般"忘记初始化变量"错误的一个特殊形式(C/C++中变量不会自动初始化,而Basic可以)。使这种错误更糟糕的原因是它的后果往往更加糟糕: void SomeFunction() { int *pnVar int nVal; nVal = *pnVar; // Bad enough. *pnVar = nVal;
使用拖放的简单方法 (转)
使用拖放的简单方法 (转)[@more@]使用拖放的简单方法 如果要为窗口增加接受Drag&Drop的功能,请按照以下步骤: 1、在OnCreate(...)中调用AcceptDrag(TRUE)。 2、增加消息映射 BEGIN_MESSAGE_MAP(……) //{{AFX_MSG_MAP(CDropEdit) ON_WM_CREATE() ON_WM_DROPFILES() // 关于Drag&Drop的消息 //}}AFX_MSG_MAPEND_MESSAGE_MAP() 3、处理消息 void CXXXXX::OnDropFiles(HDROP dropInfo){ // 得到Drag&Drop的文件个数 word wNumFilesDropped = DragQueryFile(dropInfo, -1, NULL, 0);&