摘要: 不经意间发现了wpf的这个小玩意,感觉蛮有意思的。我在项目中添加了一张图片 如图:wpf-1.JPG(10.73 K)2010-6-6 17:04:47然后再这张图片的属性中设置它的生成操作为SplashScreen 如图:wpf-2.JPG(13.51 K)2010-6-6 17:04:47之后f5启动程序,你会发现在你主程序启动之前会出现一个0.5秒的动画,当然这个是默认的,您可以通过程序来进行对它的控制。博友心声:怎么控制呢?DebugLZQ:首先让我们看看这个过程到底发生了什么,用Reflector反编译PE文件如下:从上面的il代码可以很直观地看出来,其实它是先实例化了一个Splas 阅读全文
posted @ 2011-09-06 11:32 DebugLZQ 阅读(8480) 评论(4) 推荐(4) 编辑
摘要: 建立池连接可以显著提高应用程序的性能和可缩放性。SQL Server .NET Framework 数据提供程序自动为 ADO.NET 客户端应用程序提供连接池(MSDN)。Opening a database connection is a resource intensive and time ... 阅读全文
posted @ 2011-08-25 18:03 DebugLZQ 阅读(914) 评论(0) 推荐(3) 编辑
摘要: 一、 SqlDataRead和Dataset的选择 Sqldataread优点:读取数据非常快。如果对返回的数据不需做大量处理的情况下,建议使用SqlDataReader,其性能要比datset好很多。缺点:直到数据读完才可close掉于数据库的连接 。(SqlDataReader 读数据是快速向... 阅读全文
posted @ 2011-08-25 17:58 DebugLZQ 阅读(1601) 评论(5) 推荐(4) 编辑
摘要: 公司为一个web应用程序写了一个注册机,基本原理是用户运行这个软件后,得到一个申请码,然后公司根据这个申请码给出相应注册码,匹配后方可正常使用web软件。在别人机子上没有问题,但是我机子上运行软件后死活就是没有申请码产生,也没报错。开发此程序的人员早不知道是谁了,也没有源码,只好自己分析是什么问题导致的,如果是程序的问题,希望能给程序打个“补丁”,准确的说是采用比较初级的.NET逆向工程来注入需要的补丁代码。以下是思路和主要操作(代码中略去了不需要的代码部分)。1.用reflector打开后,发现是.NET程序,且没混淆,这就好办了。因为程序的代码比较少,在reflector中看就那么几个按钮 阅读全文
posted @ 2011-08-22 09:55 DebugLZQ 阅读(2468) 评论(2) 推荐(3) 编辑
摘要: 大道至简,越是根源和基本的问题,道理实际上越简单。关于如何做人、做事、做管理的书很多,我看得不多,但是我觉得这些书更多是侧重技术和实现细节上的,而很少从人的思想和观念去讲。实际上,从根本上去说,如何做人做事是世界观的问题,也是一个哲学话题。很多人和我一样,已经到了快30的年纪,是需要去思考一下应该如何做人如何做事的,也需要一套简单、有效、完整的体系来指导自己,而这套体系将是让自己安身立命于这个世界的基石。职场上如何做人关于在职场上如何做人,我只谨记两个字--服务。你要把自己当成一个品牌去爱惜,当成一家公司去经营,你要牢牢记住你之所以能在一家公司立足,是因为公司需要你的服务。我们经常会抱怨某某银 阅读全文
posted @ 2011-08-21 14:37 DebugLZQ 阅读(749) 评论(1) 推荐(3) 编辑
摘要: 有一天我一个朋友访问一个XX图片网站……每个人背后总有几个背黑锅的“朋友”,好吧,我承认那个“朋友”其实是我自己,你能把我怎么的?这个网站用的是Discuz X2搭建的,启动了Discuz的图片延迟加载的功能。现在很多图片网站为了降低服务器压力都启用了图片延迟加载的机制,也就是只有图片处于可视区域才加载,这样用户没看到的图片就不加载,对于服务器的负载减轻还是帮助很大的。大致的原理是,对于图片标签不是把图片的路径指定到src属性上,src属性指定一个非常小的空白图片,真正的图片地址设置到一个自定义的属性上,比如file,这样img标签就是这样:<img src="blank.jp 阅读全文
posted @ 2011-08-21 14:25 DebugLZQ 阅读(2680) 评论(2) 推荐(3) 编辑
摘要: 用互斥法实现防止程序重复运行,使用内核对象Mutex可以防止同一个进程运行两次。注意:是名称相同的进程,而不是exe,因为exe程序可以改名。在Program.cs中修改首先添加using System.Threading;引用然后原内容改为下面所示 static class Program { private static Mutex myMutex; private static bool requestInitialOwnership = true; private static bool mutexWasCreated; ... 阅读全文
posted @ 2011-08-21 14:22 DebugLZQ 阅读(1707) 评论(0) 推荐(2) 编辑
摘要: CLR是 .NETFramework 精简版的基础。它负责在执行时管理代码,提供内存管理和线程管理等核心服务,同时又确保代码的安全性和准确性。Common Language Runtime 的缩写。运行在.NETFramework中的代码叫做managedcode,反之叫做unmanagedcode。相比unmanagedcode,managed code 有很多好处,比如可以用多种编程语言编写、提高安全性、易于版本控制和程序发布等等。这些都是由CLR提供的。但也有一些不利点,最容易想到的就是代码运行速度问题了。 要为managed code提供以上功能,CLR必须知道代码中的数据类型、类和与 阅读全文
posted @ 2011-08-09 16:49 DebugLZQ 阅读(919) 评论(2) 推荐(2) 编辑
摘要: 索引器是一种特殊的类成员,它能够让对象以类似数组的方式来存取,使程序看起来更为直观,更容易编写。1、索引器的定义C#中的类成员可以是任意类型,包括数组和集合。当一个类包含了数组和集合成员时,索引器将大大简化对数组或集合成员的存取操作。定义索引器的方式与定义属性有些类似,其一般形式如下:[修饰符] 数据类型 this[索引类型 index]{ get{//获得属性的代码} set{ //设置属性的代码}}修饰符包括 public,protected,private,internal,new,virtual,sealed,override, abstract,extern.数据类型是表示将要存取的 阅读全文
posted @ 2011-08-09 16:45 DebugLZQ 阅读(587) 评论(0) 推荐(0) 编辑
摘要: C#中有两种不同的相等:引用相等和值相等。值相等,即两个对象包含相同的值。例如,两个值为2的整数数具有值相等性。引用相等意味着要比较的两个对象不是两个对象,而是两个“对象引用”,这两个“对象引用”引用的是同一个对象。1、对于值类型 对于值类型,如果对象的值相等,则相等运算符 (==) 返回 true,否则返回 false。2、对于引用类型 对于string 以外的引用类型,如果两个对象引用同一个对象,则 == 返回 true。对于 string 类型,== 比较字符串的值。 ==操作比较的是两个变量的值是否相等。 equals()方法比较的是两个对象的内容是否一致.equals也就是比较引用类 阅读全文
posted @ 2011-08-09 16:38 DebugLZQ 阅读(540) 评论(0) 推荐(3) 编辑