摘要:昨天机器被干掉了,重新Ghost了一下机器,晚上和同事吃饭到9点多,回来后继续审查兄弟们的修改,发现了一个问题就是很多在SqlServer中判断二机制字段内容是否有效的时候使用的都是ADO的ActualSize,但是如果直接使用Sql语句中的DATALENGTH,效果要好的多,但是为什么都不用呢,也许是不知道吧?DATALENGTH 返回任何表达式所占用的字节数。 语法DATALENGTH ( e...
阅读全文
摘要:很多时候需要像文本框上打焦点,但是很多时候在窗体的Load事件里边调用必然出错,这个我们可以避免,但是如果有些时候我们避免比了,比如调用Combox的ListIndex属性,就要触发Click事件,很多时候我们在这个事件里边就要做一些焦点设置的都事情了。所有由于Load事件波及的combox的Click事件,造成了TextBox的SetFocus有时候错,而有些时候正常,如何解决这个问题呢。解决办...
阅读全文
摘要:今天兄弟在调试程序的时候发现了一个有意思的现象,系统提示"模块之间循环关系",下面看看示例代码: 'cDOption ExplicitPublic Event ClickEvent()Public WithEvents c As cEPublic Sub Click() RaiseEvent ClickEventEnd SubPrivate Sub c_ClickEvent() 'En...
阅读全文
摘要:今天在处理一段程序的时候发现了一些异常情况,就是如果控制面板中的设置采用的是简体中文,程序运行正常,但是如果采用了英文或者其它国家的设置系统就报错误。一般发生这种错误主要是因为程序与控制面板中的本地设置关系太紧,例如日期格式、本地的金融符号等,但是我的程序是采用RC6的算法进行一些字符串的加密,如果加解密的两端,本地设置不一样,解出来的内容就不一致。呵呵,我的解决办法是限制用户必须是在简体中文的环...
阅读全文
摘要:在VB6中,MsgBox是比较讨厌的,我在整理代码的时候,通常要检查每个MsgBox的Title是否正确,因为不同的程序员有不同的习惯,有些人也愿意省略,到底有没有办法达到Msgbox中Title的统一呢?答:当然有办法了,一种是在VB6的工程里边设置好工程的名称,然后所有的Msgbox全部全部省略Title,这样Msgbox的显示就统一了,但是这种太不爽了,在Title里边显示的控制太不灵活,而...
阅读全文
摘要:前几天检查一个兄弟写的存储过程,我想知道这个存储过程到底涉及到几个表,与我要求的表是否一致,是否有缺失,怎么办呢?难道靠人的眼睛一点一点看吗?这个到不麻烦?但是如果想知道都有那些表被读写过,哪些表被写过。。。。这不是很麻烦吗?有没有好的办法呢?答案:使用sp_depends。MSDN内容: sp_depends显示有关数据库对象相关性的信息(例如,依赖表或视图的视图和过程,以及视图或过程所依赖的表...
阅读全文
摘要:这个系列越来越多的是和SQL语句相关的问题了,因为这段时间工作和这个有关,呵呵,不管那么多了,反正,都是和开发相关的问题,就继续吧。我们通常不太注意SQL语句中Where子句的次序问题,但是这个次序往往会影响整个SQL语句的执行性能,举个例子吧。比如有一个表有3个列,分别是班级、学号、姓名。表中的数据共100条,其中1班50人,学号从1到50,二班50人,学号从1到50。那么现在的任务是在表中找到...
阅读全文
摘要:每次我们在使用查询分析器调试SQL语句的时候,通常会看到一些信息,提醒我们当前有多少个行受到了影响,这是些什么信息?在我们调用的时候这些信息有用吗?是否可以关闭呢? 答案是这些信息在我们的客户端的应用程序中是没有用的,这些信息是存储过程中的每个语句的DONE_IN_PROC 信息。 我们可以利用SET NOCOUNT 来控制这些信息,以达到提高程序性能的目的。 MSDN中帮助如下: SET NOC...
阅读全文
摘要:今天在整理代码的时候,需要修改一个函数,使这个函数可以通过ADO的Command对象的CommandText的文本内容来判断,对象是否已经加载成功 ,以避免重复的参数加载。 这个函数需要通过CommandText的字符串比较来判断,但是在测试的时候,发现了一个有趣的问题如果在调用存储过程的时候,CommandText并 不听话,而是返回类似于{? = CALL procname (?,?)},格式...
阅读全文
摘要:在用Project Analyzer 进行一个VB6的Dll工程进行代码分析的时候得到这么一个警告: Problem description - WFWKernel Base address unoptimal: WFWKernel Type Optimization Severity Warning Location WFWKernel.vbp Description A ...
阅读全文
摘要:这几天在整理类库,想通过VB6来提供全局函数,将公司常用的函数做一个封装,但是VB6中的Dll是不能提供全局函数的,感觉郁闷。疑问:全局对象,到底VB6的Dll是否能够提供全局函数呢?答案是肯定的,只需要将Instancing属性设成GlobalMultiUse就可以了,解释如下:GlobalMultiUse 与 MultiUse 类似,只增加一点:可以把属性和方法视为简单的全局函数来调用。这种方...
阅读全文