天高地厚

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

随笔分类 -  C#

1

C#
摘要:委托,英文叫Delegate。它和C或C++中的函数指针十分类似,或者说委托是高级的函数指针。它具有两大特点:面向对象,类型安全和可靠的。代码如下:namespace DelegateDemo{ public delegate void SayHandler(string name); class Program { protected void SaySmt(string name) { Console.WriteLine("Hello " + name); } static void Main(string[] args) { Program p = new Progr 阅读全文

posted @ 2013-10-24 17:14 天高地厚-GNU 阅读(808) 评论(0) 推荐(0)

摘要:一、类继承1 public class Father2 {3 }4 public class Child : Father5 {6 }二、接口继承1 public interface IBreath { }2 public interface IRun { }3 4 public class Animal : IBreath, IRun5 { }三、实现 1 public interface ISpeak 2 { 3 void Speak(); 4 } 5 public class Person : ISpeak 6 { 7 ... 阅读全文

posted @ 2013-08-01 17:40 天高地厚-GNU 阅读(184) 评论(0) 推荐(0)

摘要:在WebBrowser下对网页进行操作其实是一件挺轻松的事情,他可以很方便实现自定义的网站访问习惯。而WebBrowser毕竟 是对MS原生控件的封装,当我们使用C#下的WebBrowser尤其是这样,虽然他可以更方便大家去调用,但是他的方便却是牺牲了灵活性为代价的。有一天我想使用WebBrowser获取一个网站的COOKIE,在调用Document.Cookie时,发现无法完整获取其COOKIE,百思 不得其解,这么简单的功能,WebBrowser也会秀逗。经过抓包分析,发现原来该网站对写入到用户端关键的Cookie,加入httponlyHttpOnly,其实是一个提高WEB网站应用程序安全 阅读全文

posted @ 2013-05-24 11:55 天高地厚-GNU 阅读(335) 评论(0) 推荐(0)

摘要:界面:前台所用控件:一个FileUpload用来浏览,一个Button用来上传,一个Image用来显示上传的图片前台代码:<div> <asp:FileUpload ID="FileUpimage" runat="server" /> <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="上传" /> <asp:Image ID="Imag 阅读全文

posted @ 2013-03-29 14:46 天高地厚-GNU 阅读(151) 评论(0) 推荐(0)

摘要:Jonathan爱学习常用的C#正则表达式“^\d+$” //非负整数(正整数 + 0)“^[0-9]*[1-9][0-9]*$” //正整数“^((-\d+)|(0+))$” //非正整数(负整数 + 0)“^-[0-9]*[1-9][0-9]*$” //负整数“^-?\d+$” //整数“^\d+(\.\d+)?$” //非负浮点数(正浮点数 + 0)“^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$” //正浮点数“^((-\d+(\.\d+)?)|(0+(\.0+)?))$” 阅读全文

posted @ 2013-02-05 08:47 天高地厚-GNU 阅读(185) 评论(0) 推荐(0)

摘要:环境: Win server 2008 R2 + Hyper-v + SCVMM2008 R2目的: C#调PowerShell在SCVMM中创建虚拟机时,实时显示创建进度在SCVMM2008R2中手动创建一个vm(虚拟机)时,作业界面中会显示很详细的创建进度,包括有哪些子任务,每个任务的完成度、状态等信息。SCVMM的界面操作是基于Powershell的,所以肯定有ps脚本可以实现上述目的。microsoft提供的创建虚拟机的ps脚本中,提到如下内容(为显示PS脚本中部分内容被回车)Code highlighting produced by Actipro CodeHighlighter.. 阅读全文

posted @ 2013-01-29 13:40 天高地厚-GNU 阅读(369) 评论(0) 推荐(0)

摘要:-------------JSON字符串---------{"id":"-1","result":{"relations":[{"ptId":"713990455","game":"风云","gameid":"50","worldid":"1.1","nickname":"贵族≮蓝皓≯","gender&qu 阅读全文

posted @ 2013-01-24 11:09 天高地厚-GNU 阅读(289) 评论(0) 推荐(0)

摘要:BeginInvoke方法可以使用线程异步地执行委托所指向的方法。然后通过EndInvoke方法获得方法的返回值(EndInvoke方法的返回值就是被调用方法的返回值),或是确定方法已经被成功调用。具体代码如下?12345678910111213141516171819202122protected void Page_Load(object sender, EventArgs e) { runDel = new runDelegate(SendEMail); } private delegate string runDelegate(); private runDelegate runDel 阅读全文

posted @ 2013-01-22 13:31 天高地厚-GNU 阅读(138) 评论(0) 推荐(0)

摘要:ManualResetEvent 实例时接收一个Boolean类型的参数来初始化其状态,true表示畅通无阻的状态(signaled),线程不能阻塞,即使调用WaitOne也不能 阻塞;false表示是可阻塞的状态(nonsignaled),可以调用WaitOne等方法来阻塞的。这里初始化的只是一个状态。Reset方法把 ManualResetEvent 的状态设置为可阻塞的(nonsignaled),不管之前是什么状态,调用Reset都把状态设置为阻塞的(nonsignaled)。WaitOne 阻塞当前线程直到别的线程调用Set方法,只有ManualResetEvent 的状态是可阻塞(n 阅读全文

posted @ 2013-01-06 11:04 天高地厚-GNU 阅读(149) 评论(0) 推荐(0)

摘要:C#是.Net平台的通用开发工具,它能够建造所有的.Net应用。在.Net中所有线程都运行在应用程序域(AppDomain)中,这也许让你想到Win32进程,实际上它们还是有很大的不同。应用程序域提供了一种安全而通用的处理单元,公共语言运行库可使用它来隔离应用程序。注意在.Net中应用程序的隔离是应用程序域而不是进程,在单个进程中可以存在几个应用程序域,而且线程可以跨越应用程序域的范围,某个线程中的方法可以调用另一个线程的方法,这样的话就不会造成进程间调用或进程间切换等方面的额外开销。可以说应用程序域是物理进程(也即win32中的Process)内的逻辑进程。 我们可以看出它们各自使用的... 阅读全文

posted @ 2012-12-18 16:05 天高地厚-GNU 阅读(114) 评论(0) 推荐(0)

摘要:怎样通过HttpWebRequest 发送 POST 请求到一个网页服务器?例如编写个程序实现自动用户登录,自动提交表单数据到网站等。假 如某个页面有个如下的表单(Form):<form name="form1" action="http:www.breakn.com/login.asp" method="post"> <input type="text" name="userid" value=""> <input type="pas 阅读全文

posted @ 2012-12-18 15:49 天高地厚-GNU 阅读(233) 评论(0) 推荐(0)

摘要:usingSystem;namespaceweb.comm{/**////<summary>///ProcessRequest的摘要说明。///</summary>publicclassProcessRequest{publicProcessRequest(){////TODO:在此处添加构造函数逻辑//}SQL注入式攻击代码分析#regionSQL注入式攻击代码分析/**////<summary>///处理用户提交的请求///</summary>publicstaticvoidStartProcessRequest(){//System.Web 阅读全文

posted @ 2012-12-18 11:52 天高地厚-GNU 阅读(155) 评论(0) 推荐(0)

摘要:应用程序更新的方法一般有两种:一是通知用户(比如发E-mail),让用户到指定的网站地址下载更新的程序;二是将更新的职责从用户那边转移到应用程序自身,由应用程序自身取代用户获取并安装一个软件的更新,客户端应用程序自身负责从一个已知服务器下载并安装更新,用户唯一需要进行干预的是决定是否愿意现在或以后安装新的更新。显然,后者比前者更友好。你现在可以看到类似后一种方法的实际产品,比如Windows XP和Microsoft Money。本文所介绍的.NET应用程序更新组件就可以提供类似的功能。 一、.NET应用程序更新组件介绍 .NET 应用程序更新组件AppUpdater 是使用.NET框架... 阅读全文

posted @ 2012-12-18 11:51 天高地厚-GNU 阅读(266) 评论(0) 推荐(0)

摘要:一、抽象类: 抽象类是特殊的类,只是不能被实例化;除此以外,具有类的其他特性;重要的是抽象类可以包括抽象方法,这是普通类所不能的。抽象方法只能声明于抽象类中,且不包含任何实现,派生类必须覆盖它们。另外,抽象类可以派生自一个抽象类,可以覆盖基类的抽象方法也可以不覆盖,如果不覆盖,则其派生类必须覆盖它们。 二、接口: 接口是引用类型的,类似于类,和抽象类的相似之处有三点:1、不能实例化; 2、包含未实现的方法声明; 3、派生类必须实现未实现的方法,抽象类是抽象方法,接口则是所有成员(不仅是方法包括其他成员); 另外,接口有如下特性:接口除了可以包含方法之外,还可以包含属性、索引器、事件,而且这些成 阅读全文

posted @ 2012-12-18 11:41 天高地厚-GNU 阅读(138) 评论(0) 推荐(0)

摘要:http://www.cnblogs.com/hanghangaidoudou/archive/2008/06/02/1211870.htmlPowerTalk控件 制作 即时通信 聊天室 产品咨询系统 支持与MSN的控件http://www.cnblogs.com/jameszou/archive/2011/07/21/2112497.htmlch01.深入理解C#委托及原理_《没有控件的ASPDONET》http://www.cnblogs.com/donhwa/archive/2010/05/13/jqeury-easyui-Confirm-in-aspnet.htmlch01.深入理解 阅读全文

posted @ 2012-12-17 21:22 天高地厚-GNU 阅读(125) 评论(0) 推荐(0)

摘要:二、事件 1.了解概念事件就是当对象或类状态发生改变时,对象或类发出的信息或通知。发出信息的对象或类称为"事件源",对事件进行处理的方法称为"接收者",通常事件源在发出状态改变信息时,它并不知道由哪个事件接收者来处理.这就需要一种管理机制来协调事件源和接收者,C++中通过函数指针来完成的.在C#中事件使用委托来为触发时将调用的方法提供类型安全的封装。 在介绍事件之前我们先来了解几个事件的基本概念和几个重要素: --事件的本质 -事件是特殊的委托实例 -事件关键字:event--事件的四个要素: -定义事件 -激发事件 -监听事件 -执行事件 2.事件分析 阅读全文

posted @ 2012-12-16 21:32 天高地厚-GNU 阅读(136) 评论(0) 推荐(0)

摘要:最近在项目中遇到了Socket异步网络传输的问题,所以沉下心来整理下。于是,先问了下度娘,结果找到了园友志良的一篇文章《C#中异步和多线程的区别》(参考文献1),精读了一遍,个人觉得理解的很好,自己学习下之余,又动手加工了一下以分享给各位博友,希望各位博友能对异步和多线程有一个清楚的认识。 C#中异步和多线程的区别是什么呢?异步和多线程两者都可以达到避免调用线程阻塞的目的,从而提高软件的可响应性。甚至有些时候我们就认为异步和多线程是等同的概念。但是,异步和多线程还是有一些区别的。而这些区别造成了使用异步和多线程的时机的区别。 异步操作的本质http://www.cnblogs.com/... 阅读全文

posted @ 2012-12-16 21:27 天高地厚-GNU 阅读(139) 评论(0) 推荐(0)

摘要:http://www.cnblogs.com/heyuquan/archive/2012/12/16/2820775.html 阅读全文

posted @ 2012-12-16 21:17 天高地厚-GNU 阅读(110) 评论(0) 推荐(0)

摘要://登录VER=1.0&CMD=Login&SEQ=&UIN=&PS=&M5=1&LC=9326B87B234E7235//获取消息VER=1.0&CMD=GetMsgEx&SEQ=&UIN=//发送消息VER=1.0&CMD=CLTMSG&SEQ=&UIN=&UN=&MG=//朋友列表VER=1.0&CMD=List&SEQ=&UIN=&TN=160&UN=0//获取好友状态VER=1.0&CMD=Query_Stat&SEQ 阅读全文

posted @ 2012-12-16 20:02 天高地厚-GNU 阅读(171) 评论(0) 推荐(0)

摘要:线性表//注:js数组是引用类型,它只允许通过索引来获取或改变数组的值 引用类型的东西都是不能通过(它赋值过的外部变量)所改变的 也就是(它赋值过的外部变量)这个值改变了原数组不会有任何变化var arr1=["a","b","c","d","e","f"];var tmp=ListInsert(arr1,4,"ppp");//在指定位置添加一个元素function ListInsert (arr,num,parm) { if(num>arr.len 阅读全文

posted @ 2012-12-15 07:35 天高地厚-GNU 阅读(126) 评论(0) 推荐(0)

1
点击右上角即可分享
微信分享提示