行内技术
五子棋的核心算法
五子棋是一种受大众广泛喜爱的游戏,其规则简单,变化多端,非常富有趣味性和消遣性。这里设计和实现了一个人机对下的五子棋程序,采用了博弈树的方法,应用了剪枝和最大最小树原理进行搜索发现最好的下子位置。介绍五子棋程序的数据结构、评分规则、胜负判断方法和搜索算法过程。一、相关的数据结构关于盘面情况的表示,以链表形式表示当前盘面的情况,目的是可以允许用户进行悔棋、回退等操作。CListStepList;其中Step结构的表示为:&...
2013-3-5320
用DELPHI开发DirectX游戏
这不是一篇关于DirectX的祥细教程,而是讲解如何用DELPHI开发DirectX游戏.因为不管是网上或是书店,关于DirectX的书基本上是用C++或VC描述的.用DELPHI开发游戏的资料是少之又少,这篇文章的目的就是让读者能够学会如何利用已有的资料学习来开发游戏.这篇文章面向的是对DirectX有一定了解,却不知道如何在DELPHI下开发DirectX游戏的读者.推荐参考资料:<<游戏编程指南>>,<<DirectX中文收册>>DELPHI能不能开发游戏?回答是当然,网上...
2013-3-5362
在Delphi中实现图片的旋转、缩放
好长时间没有写东西了,并不是因为前面的东西遭受了很多西红柿和鸡蛋,而是自己实在没有什么真实的东西写出来供大家参考。但是最近在帮一个朋友做一个项目的时候,遇到了在delphi中对图像的简单处理,于是不停的从网上找资料,翻看csdn以前的帖子,从我搜索的结果发现很多人会在各种项目中遇到类似的图片处理问题,但是多数得到的答案似乎并不完整(因为很多都没有结帖,也可能是个人习惯的问题,呵呵,希望大家读了我这个文章之后,能够家开结帖速度)。于是我把我遇到的问题和解决方案写在下面,供大家参考,同时欢迎大家继续拍砖。在正式内容之前要把我要解决的问题写在前面,同时也让读者有一个好的定位,从而不会因为我...
2013-3-5439
关联规则挖掘算法综述
摘要本文介绍了关联规则的基本概念和分类方法,列举了一些关联规则挖掘算法并简要分析了典型算法,展望了关联规则挖掘的未来研究方向。1引言关联规则挖掘发现大量数据中项集之间有趣的关联或相关联系。它在数据挖掘中是一个重要的课题,最近几年已被业界所广泛研究。关联规则挖掘的一个典型例子是购物篮分析。关联规则研究有助于发现交易数据库中不同商品(项)之间的联系,找出顾客购买行为模式,如购买了某一商品对购买其他商品的影响。分析结果可以应用于商品货架布局、货存安排以及根据购买模式对用户进行分类。Agrawal等于1993年首先提出了挖掘顾客...
2013-3-5292
编写驱动拦截NT的API实现隐藏文件目录
目前NT下有很多种隐藏文件和目录的方法,其中最简单的一种是给文件和文件夹加上系统属性和隐藏属性,操作系统就会不在显示了,而且查找也找不到了,但是这种方法一点都不彻底,没有可用性!下面我们来介绍用NT驱动程序来拦截NTAPI来实现彻底隐藏文件和目录的目的。NT下有一个文件NTDLL.DLL,大部分NTAPI都是在这个库中封装的。其中实现查找文件和目录的API接口是ZwQueryDirectoryFile,所以我们只要拦截这个API的话,文件和目录就可以完全隐藏了!下面来一步不实现(准备工作:到NTDDK中找一个WDM驱动程序模型,也就是最简单...
2013-3-5352
平台+插件软件设计思想及基于COM的原型实现
引言:我们已经习惯于一个人独立进行软件开发,每个人都使用自己的风格进行程序设计,但随着工程项目变大或者是对时间要求比较紧时,就需要几个人,十几个人,甚至是上百个人协作进行软件开发与设计,这时一个比较棘手的问题就是如何将若干人所编写的软件代码(有可能是链接库、组件)进行无缝地集成,纵然进行源代码集成是个比较传统也比较成熟的方式,适当使用链接库或组件,也可减少源代码的泄露,但经常的情况是每一次的程序集成和代码维护都需要重新编译与链接源代码和重新发布新软件,这种工作有时又是非常麻烦的。那么就有疑问产生,能不能有一种方法将需要开发的目标软件分为若干...
2013-3-5293
VC实现屏幕变暗效果
网络上有很多利用VB编程实现屏幕变暗的效果(像关闭Win95时的效果),我用VC改写了一下,权利属于原文作者!正文HDChdc;//屏幕的宽度个高度intSCRWidth,SCRHeight;if(m_Bool){BYTEbybi...
2013-3-5409
VB中KeyCode常数用法
可在代码中的任何地方用下列常数代替实际值:常数值描述vbKeyLButton0x1鼠标左键vbKeyRButton0x2鼠标右键vbKeyCancel0x3CANCEL键vbKeyMButton0x4鼠标中键vbKeyBack0x8BACKSPACE键vbKeyTab0x9TAB键vbKeyClear0xCCLEAR键vbKeyReturn0xDENTER键vbKeyShift0x10SHIFT键vbKeyControl0x11CTRL键vbKeyMenu0x12MENU键vbKeyPause0x13PAUSE键vbKeyCapital0x14CAPSLO...
2013-3-5314
“一键功能”的设计、实现与应用
一、引言在Windows桌面上创建快捷方式的应用程序,可以通过设置它的属性来实现一键调用该程序的功能(即“一键功能”),可是,如果每个常用程序都通过创建快捷方式来实现“一键功能”,则桌面上将显得杂乱无章;怎样才能既不为应用程序创建快捷方式,又能实现“一键功能”呢?下面介绍用VB编程实现“一键功能”的方法及其应用。二、编程原理在API函数中有一个GetAsyncKeyState函数,功能是判断函数调用时指定虚拟键的状态,即调用该函数时,可以检测到用户想检测的键是否被按下该函数的声明如下:PrivateDeclareFunctionGetAsyncKeyStateLib"...
2013-3-5355
提取网页所有链接
正文见过“网际快车”的“使用网际快车下载全部链接”这个功能吗?想实现他,我们可以这样做:IE有几个有用的接口,我们可以用他来提取网页所有链接首先是用IHTMLDocument2的get_links,来获取IHTMLElementCollection接口,再通过IHTMLElementCollection来获取IHTMLAnchorElement,而IHTMLAnchorElement接口的get_href就是我们想要的,通过循环获取,我们就可以得到网页的所有链接了...
2013-3-5284
j2me游戏开发实例讲解
J2ME再现华容道一.序言  昨天在网上闲逛,发现一篇讲解用delphi实现华容道游戏的文章,颇受启发.于是,产生了将华容道游戏移植到手机中去的冲动.现在手机游戏琳琅满目,不一而足,华容道的实现版本也很多.正巧不久前笔者对J2ME下了一番功夫,正想借这个机会小试牛刀.选用J2ME作为开发语言还有一个原因就是目前Java开发大行其到,无限增殖业务迅猛发展,J2ME的应用日渐活跃起来,也希望我的这篇文章能够为J2ME知识的普及和开发团队的壮大推波助澜.由于长期受ISO规范的影响,这次小试牛刀我也打算遵照软件工程的要求,并采取瀑布式的开发模式来规划项目,也希望借此机会向各位没有机会参与正式...
2013-3-5364
VC中给树形控件的图标加上工具提示
我从没有在任何一个应用程序中看到过图标的工具提示。有时候查遍了整个帮助文档也没有明白某个图标是什么意思。如果能在自己的程序中为图标加上工具提示,一定会使界面的友好性大大增加。本文中以树形控件为例,详细介绍了在VC中使用MFC提供的机制来实现图标工具提示的方法。----第一步:使控件可以显示工具提示----调用EnableToolTips(TRUE)使一个窗口可以显示工具提示。在什么地方插入这条代码最好呢?在类的PreSubclassWindow()中。因为不管一个控件如何被创建,MFC都会调用此函数。而其他的函数则不一定会被调用。以OnCreate()为例,如果调用C...
2013-3-5520
图像平滑滚动效果的VC实现
前言:  在图像的编程中,经常会遇到这样一种情况,在有限的区域中显示了一幅大图,这时要浏览图像的各个部分,这就需要用到图像的滚动。关于它的实现,许多书都有提及,但其中的关键点和难点,即拖动中的刷新和闪烁问题,却讲述的不多,这也是我写本文的目的所在,下面我将详细分析实现方法。  实现效果及实现方法:  在图像区域中按下鼠标左键,可拖动图像在某一有限区域中任意滚动。  方法为:拖动时计算上次与本次的偏移,然后将图像显示的起始点进行变化并刷新图像区域。  实现部分:  第一步:响应WM_LBUTTONDOWN消息,记录按下开始拖动的起始位置。  voidCWingI...
2013-3-5402
实现窗体自动隐藏
最近写个小程序,想让窗体自动隐藏,到csdn搜索,发现不少网友问这个问题,可是具体实现的例子不多,我经过琢磨,实现可记录停靠位置,可左上右三方停靠并隐藏。现将实现的例子拿出来供大家参考。实现窗体自动隐藏方法有多种,可以使用定时器,不断监视鼠标,当鼠标移动到窗体边缘时,显示窗体,当鼠标离开后隐藏窗体。也可以在鼠标收到WM_NCMOUSEMOVE或WM_MOUSEMOVE(无边框窗体)时激活窗体,然后在窗体消息WM_ACTIVE中设置显示或隐藏,这种方法在窗体未失去焦点时不会隐藏。我在原本的设计中便使用这种方法,只是在设计时发现非主窗体不太合适,激活窗体时会出现两个键盘焦点,而且我所需要的...
2013-3-5267
九连环游戏算法递归实现
///////////////////////////////////////////////功能:计算九连环游戏中取下第n个环需要几步//整个游戏所需步数=取下第1个环所需步数+...+取下第9个环所需步数//实现方法:通过递归模拟取环动作//语言:pascal//时间:1999-05//作者E-mail:sendtowxd@163.net//源码天地-专业提供Delphi,VB,VC源码http://www.codesky.net////////////////////////////////////////////programjlh(i...
2013-3-5533
用汇编破解cmos密码
cmos中数据的访问是通过端口70H和71H实现的,70H是一个字节的地址端口,用来设置cmos中数据的地址。71H是用来读写端口70H设置的对应单元的数据的。。方法:进入debug直接输入:o7010o7010或者o7016o7116或者o7010o71ff最后用q退出debug重启计算机,按del不用密码进入cmos.
2013-3-5394
在基于MFC的组件程序中加入自卸载功能
作者:AlexeiEvdokimov译自:CodeGuru使用MFC实现COM组件时,经常节省许多开发时间。例如,使用AppWizard生成的基于MFC的COMdll工程,已经自动的提供了DllRegisterServer功能的实现。然而,却没有自动生成DllUnregisterServer功能。一般情况下,DllUnregisterServer对于程序是不可缺少的,因为一个完整的程序,不仅需要自注册功能,同时也需要自卸载功能。基于MFC实现DllRegisterServer()的方法是调用COleObjectFactory::UpdateRegistry...
2013-3-5489
条形码编程摘录
广东李玉君一、条形码的读取用过键盘口式的扫条码工具的朋友就知道,它就如同在鍵盘上按下数字鍵一样,基本不需任何编程和处理。但如果你使用的是其它接口的话,可能你就要为该设备编写通讯代码了。以下有一段简单的25针串口的条码读取器通讯代码。OptionExplicitDimsDataAsStringPrivateSubForm_Load()&n...
2013-3-5438
在类中封装目录选择对话框
你是否在纳闷,在VB公用对话框中怎么没有目录选择对话框呢,事实上在API查看器中也未声明这个API.本例用到的两个API如下SHBrowseForFolder用于浏览文件夹、打印机和网络SHGetPathFromIDList用于将项标识符列表转换为文件系统路径有了这两个API函数,你就可以构造一个目录选择对话框类以代替VB中的目录控件.类clsGetPath的完整代码如下:OptionExplicit'API声明部分P...
2013-3-5417
在VB6中用Select语句检索记录
在VB数据库程序设计中经常要检索记录,常用的是把一条SELECT语句传送给Recordset对象的Open方法或Execute方法。下面就SELECT语句做一比较全面的阐述。1.简单SELECT语句“SELECT*”的意思是:返回在所指定的记录源中能找到的所有字段。这种命令形式很方便,因为你无需知道从表中检索的字段名称。然而,检索表中的所有列是低效的。因此,因该只检索需要的字段,这样可以大大的提高查询的效率。2.使用From子句指定记录源From子句说明的是查询检索记录的记录源;该记录源可以是一个表或另一个存储查询。例:Select*Fromstudents检索stu...
2013-3-5361