Fork me on GitHub

2011年6月28日

摘要: 截图是最经常用的工具,QQ截图是我见过最好的截图工具,只是你必须打开QQ才可以使用,有时候没法上网,或者不想上QQ的时候,截图还是很麻烦。Windows自带的那个截图工具和QQ的截图工具相差甚远。所以想找一个QQ离线时候的替代品。下了几个软件,觉得使用不够方便。最后找到了QQ截图工具的提取版,可以实现QQ的截图功能,但是使用起来每次都带打开,而且不能使用快捷键。所以打算写个软件,重新整合一下。 要实现的功能 1:实现QQ的截图功能 2:时刻在后台运行,随时使用 3:不与QQ冲突 4:可以使用快捷键 5:开机自动启动代码实现 1:实现QQ的截图功能,调用提取出来的程序 /// <summa 阅读全文
posted @ 2011-06-28 10:11 HackerVirus 阅读(317) 评论(0) 推荐(0)
摘要: Resharper进阶一:简要介绍 (由于博客存在问题,老是不能成功上传,所以只能提供官方下载地址)下载地址 注册码:用户名: User注册码:D9d09DSYJel9IyuDU4btAQwZcbLugUad 面对这样一个问题:为什么.net能够比java更加快速的完成开发?恐怕最大的优势在于Microsoft提供了一个无比强大的IDE。它的强大在于适用于各个层次的开发人员。当你还是一只小小鸟的时候,可以学会drag&drop,当你开始写代码的时候,你会发现设计器生成的代码是多么愚蠢和臃肿。当你自己能够写出干净的代码时,可能再也不想切换到设计器中去了(切换/F7)。我相信我们中的大部分 阅读全文
posted @ 2011-06-28 09:16 HackerVirus 阅读(432) 评论(0) 推荐(0)
摘要: Reflector是一款比较强大的反编译工具,相信很多朋友都用过它,但reflector本身有很多局限性,比如只能一个一个的查看方法等,但幸好reflector支持插件功能目前网上有很多reflector的插件,本人找取了两个应用范围很广,并且广受好评的插件:Reflector.FileDisassembler和Reflector.FileGenerator和Reflector进行了整合,放在了一个压缩包中,大家可以直接解压缩后就开始使用,其中FileGenerator在网上没有现成dll,本人编译后将其取出,放在了压缩包中,一直在苦苦找寻的朋友这次可以拿来直接用了:)点击下载Reflecto 阅读全文
posted @ 2011-06-28 09:11 HackerVirus 阅读(269) 评论(0) 推荐(0)
摘要: 概述事务必须具有原子性、一致性、隔离性和持久性。虽然首字母缩写词容易记忆,但是每个词的含义不是很明显。以下是简要说明。 ● 原子性(Atomicity):原子性可确保要么执行所有更新,要么什么也不发生。由于事务中的原子性保障,开发人员不必编写代码来处理更新成功而另一个没有成功的情况。 ● 一致性(Consistency):一致性意味着事务的结果使得系统保持一致状态。在事务启动之前,数据保持有效的状态,这与事务结束时一样。一致性还确保了事务必须使得数据库保持一致状态,如果事务的部分操作失败,则其他部分也必须回到原来的状态。 ● 隔离性(Isolation):多个用户可能同时访问同一个数据库。使用 阅读全文
posted @ 2011-06-28 09:10 HackerVirus 阅读(239) 评论(0) 推荐(0)
摘要: .NET简谈互操作(三:基础知识之DllImport特性) 2011-06-27 15:36 by 南京.王清培, 787 visits, 收藏, 编辑我们继续.NET互操作学习,上一篇文章中我们介绍了托管代码怎么与非托管代码C++之间的互操作;要想在托管代码中成功的进行非托管调用,要注意的细节还是很多的,下面我们就来介绍一下,在互操作方面托管代码要注意的必不可少的代码申明,为我们下面的互操作打下基础;在.NET平台里面开发我们还是很幸运的,微软为我们做了很多很方便的东西,我们只需要了解一下就能快速上手;在互操作里面我们只需要借助DllImport特性就能很好的切入到非托管代码中,微软为我们. 阅读全文
posted @ 2011-06-28 09:10 HackerVirus 阅读(193) 评论(0) 推荐(0)

2011年6月25日

摘要: 随笔档案 - 2011年6月 .NET简谈互操作(二:先睹为快) 2011-06-24 12:54 by 南京.王清培, 1134 visits, 网摘, 收藏, 编辑 摘要:我们继续.NET互操作学习,为了揭开互操作的神秘面纱,今天这篇文章我们就来先睹为快,让我们先来做个例子,基础的东西,我们陆续进行讲解;由于互操作牵扯到的东西非常多,比较复杂,我们要循环渐进的学习,为了给大家有一定的吸引力,让我们一边看一边能动手做起来;本篇文章用VisualStudio2010进行演示,将非托管代码暴露在我们眼前,它对我们来说不在有神秘感,我们通过.NETP/invoke(平台调用)很方便的进行调用,可能 阅读全文
posted @ 2011-06-25 09:59 HackerVirus 阅读(218) 评论(0) 推荐(0)

2011年6月24日

摘要: 一、委托Delegate一般的方法(Method)中,我们的参数总是string,int,DateTime...这些基本的数据类型(或者没有参数),比如publicvoidHelloWorld(){Console.WriteLine("HelloWorld!");}publicvoidHelloWorld(stringname){Console.WriteLine("Hello,{0}!",name);}但是有些时候,我们希望把一个方法本身当做参数传递给另一个方法,比如myObject.callMethod(HelloWorld);在没有委托之前,这是一 阅读全文
posted @ 2011-06-24 09:58 HackerVirus 阅读(201) 评论(0) 推荐(0)
摘要: 这几天研究了一下Linq,C# 3.0中的“扩展方法”特性为IEnumerable<T>增加了诸如Where、Select等查询方法,这使得“语言集成查询”成为顺其自然的事情。而C#3.0中Linq的实现也是建立在C#2.0的匿名委托的特性之上。今天,我尝试在C#2.0中使用匿名委托模拟C#3.0中Where、Select等查询方法的实现。我将所有的查询方法作为静态方法在GenericHepler静态类中实现。之前,我们先定义泛型委托: public delegate TResult Func<T, TResult>(T source);这个委托在后面的实现中需要用到。 阅读全文
posted @ 2011-06-24 09:56 HackerVirus 阅读(238) 评论(0) 推荐(0)
摘要: Lambda 表达式 和 Predicate 泛型委托 2011-01-06 14:36 by 田志良, 2744 visits, 收藏, 编辑1. Lambda表达式 “Lambda” 表达式”是一个匿名函数,用于创建委托或表达式树类型。 “=>”为Lambda 运算符,读为“goes to”。Lambda 运算符左边是“输入参数”,右边是“表达式或语句块”,如下所示:1delegate int del(int i);2static void Main(string[] args)3{4del myDelegate = x => x * x;5int j = myDelegate 阅读全文
posted @ 2011-06-24 09:49 HackerVirus 阅读(241) 评论(0) 推荐(0)
摘要: 1. delegate 委托可以理解为cxx 语言中的函数指针,标示了方法调用的回调函数的规范。强类型,便于编译时检查是它的最大优点,从此可以和void * 说再见了。2. event 事件用以delegate委托声明事件,标示响应该事件的回调函数必须符合其声明委托的定义3. lambda 表达式在.net世界中表现为匿名委托,之前又要提到匿名方法(函数)01public class Test{02public void delegate Close(); //声明一个无参无返回值的委托03public event Close CloseEvent; //声明一个Close对应事件04}05s 阅读全文
posted @ 2011-06-24 09:44 HackerVirus 阅读(173) 评论(0) 推荐(0)