AhDung

/*追求代码质量的野生码农*/

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
上一页 1 ··· 5 6 7 8 9 10 11 下一页

2014年8月12日

摘要: 本文还是折腾安装包期间衍生出来的产物。我那安装包在安装期间有这个动作:- 让用户填写一些信息,待安装完成后把这些信息写入软件安装目录中的指定ini、xml文件中上文说的是如何用vbs写ini,ini搞完了,这下搞xml。本来借助xml完善的DOM实现,包括vbs在内的大多数语言操作xml都很容易,调... 阅读全文
posted @ 2014-08-12 19:31 ahdung 阅读(2511) 评论(0) 推荐(2) 编辑

2014年8月11日

摘要: 这两天在折腾给一个项目打安装包,第一次接触软件打包,用的Advanced Installer(以下简称AI),应该说如果安装过程没有特殊动作(常规动作指释放文件、写注册表、建快捷方式等)的话,倒挺傻瓜的,按照向导和界面操作就能打好一个包。但我的安装动作包括:- 提供一个ComboBox列出已安装打印... 阅读全文
posted @ 2014-08-11 13:21 ahdung 阅读(2776) 评论(0) 推荐(3) 编辑

2014年8月2日

摘要: 一、“有人吗?”你能得到一句【在,请说】的答复我就服了你,这样问的结果往往是等半天没一个人鸟你,悲观的你或者就此凄凉的退群了,感概人情冷暖的同时甚至开始怀疑人生;积极的你或者这才意识到~要不干脆说问题吧,呵呵。这类型的其它变种有:“有高手吗?”“高手在吗”……哈~这问题得这么分析:如果是常规码农(非... 阅读全文
posted @ 2014-08-02 17:11 ahdung 阅读(742) 评论(0) 推荐(1) 编辑

2014年5月14日

摘要: ---------------------------更新:2014-05-19---------------------------优化了一下逻辑,就是既然可以通过设置BorderSide=None来不显示边框,那么再设计一个BorderMode.None就显得多余,即BorderMode枚举只需... 阅读全文
posted @ 2014-05-14 17:31 ahdung 阅读(11109) 评论(4) 推荐(6) 编辑

2014年4月10日

摘要: 先解释一下何谓“划算”:假定一个Winform程序包含若干个窗体,每个窗体左上角都要显示图标(即要设置Form.Icon属性),该程序本身也要有个图标(用于在OS资源管理器中显示),所有这些图标都是一个样子——这是一种很常见的情形。如图:即同一个图标要用在程序本身和程序中的各个窗体之上。那么所谓“划算”就是指,在程序文件(exe)中只存储1份图标数据,所有要用到该图标的地方都从这里取。而不是存储多份,各取各的,因为这样显然会增大程序体积,很不“划算”。之所以有这个话题,是因为如果不注意操作技巧,就会造成同一个图标存储多份的情况,VS和编译器并没有智能到会帮我们自动清除冗余资源的地步。那么如何才 阅读全文
posted @ 2014-04-10 18:11 ahdung 阅读(2459) 评论(1) 推荐(3) 编辑

2014年3月25日

摘要: 功能与.net版string.Split函数类似,只不过.net返回的是数组,这个返回的是一个单列表格,每个拆分出来的子串占一行。可选是否移除空格子串和重复项。市面上类似的函数不算少,但大多都是在循环中对原串进行改动,我感觉这样不好,虽然不知道sql的字符串是不是像.net的一样具有不可变性,但感觉尽量不要去动原串最好,万一sql的字串也不可变,那变一次就要产生一份,尤其是每圈循环都在变,内存消耗让人心疼,所以才有重新造个轮子的想法。另外,如果SQL开启了CLR支持,完全可以封装一个.net的Split到SQL里用,这样最简单,性能也应该更好(猜测)。不废话,上函数:/*----------- 阅读全文
posted @ 2014-03-25 11:53 ahdung 阅读(5840) 评论(3) 推荐(0) 编辑

2014年3月24日

摘要: ----------------更新:2014-04-21---------------蒙doggo兄指教,得知有更好的方法可以代替蹩脚的0尺寸Button法,即调用窗体的验证方法Form.Validate(),该方会触发窗体中焦点控件的Validating事件以验证数据,达到与0尺寸Button法... 阅读全文
posted @ 2014-03-24 12:07 ahdung 阅读(2702) 评论(4) 推荐(1) 编辑

2014年3月8日

摘要: 回调方法中几乎都会存在获取委托实例的需求,进而通过委托实例调用EndInvoke以得到异步执行的返回值。在我看过的相关文章中,获取委托实例的方法几乎都是同一个,就是向BeginInvoke的最后一个参数(object型)传入委托实例,然后在回调方法中通过ar.AsyncState得到,甚至在《C#高级编程》一书中,还特地讲到最后这个object参数最适合传入委托实例本身,以便回调方法中获取到它。直到看了张子阳的《.Net之美》一书后(似有广告之嫌,但事实如此,我也就不避讳了),新学到一招,不需要传参,直接就能从ar得到委托实例。如下: ...... DemoDelegate del... 阅读全文
posted @ 2014-03-08 17:22 ahdung 阅读(1148) 评论(0) 推荐(1) 编辑

2014年1月28日

摘要: 环境:mssql ent 2k8 r2原理:遍历所有含自增列的用户表,用sp_spaceused过程分别获取每张表的行数并写入临时表,然后使用IDENT_CURRENT函数获取表的最大标识值,比较二者并返回结果IF OBJECT_ID('tempdb..#TableRowCount','U') IS NOT NULL DROP TABLE #TableRowCountGOCREATE TABLE #TableRowCount (Name sysname PRIMARY KEY, RowCnt DECIMAL(11,0), Reserved VARCHAR(18) 阅读全文
posted @ 2014-01-28 17:01 ahdung 阅读(342) 评论(0) 推荐(0) 编辑

摘要: 环境:mssql ent 2k8 r2原理:遍历所有用户表,用sp_spaceused过程分别获取每张表的行数并写入临时表,最后返回临时表IF OBJECT_ID('tempdb..#TableRowCount','U') IS NOT NULL DROP TABLE #TableRowCountGOCREATE TABLE #TableRowCount (Name sysname PRIMARY KEY, RowCnt DECIMAL(11,0), Reserved VARCHAR(18), Data VARCHAR(18), Index_Size VARCH 阅读全文
posted @ 2014-01-28 16:51 ahdung 阅读(2020) 评论(0) 推荐(0) 编辑

上一页 1 ··· 5 6 7 8 9 10 11 下一页