许明会的计算机技术主页

Language:C,C++,.NET Framework(C#)
Thinking:Design Pattern,Algorithm,WPF,Windows Internals
Database:SQLServer,Oracle,MySQL,PostSQL
IT:MCITP,Exchange,Lync,Virtualization,CCNP

导航

2011年4月18日

委托和事件练习之-学校考试

摘要: 就委托和事件,尝试一个作业,可参考前面的《老鼠出现引发的血案》。这次我们就学生考试展开:老师下令考试,学生开始考试;学生宣布考完,老师就来收卷。怎么写?usingSystem;namespace委托与事件总结{//定义委托publicdelegatevoiddelegateFinishedExam(DateTimeFinishedTime,Studentstudent);publicdelegatevoiddelegateStartExam(DateTimeStartTime);publicclassStudent{//定义事件,关联到委托publiceventdelegateFinished 阅读全文

posted @ 2011-04-18 10:16 许明会 阅读(340) 评论(0) 推荐(0) 编辑

老鼠出现引发的血案

摘要: 老话题,委托、事件和方法,经典的案例,重新搞一下。/*老鼠出现引发的血案^_^测试目标:老鼠出现后,猫叫,吓跑了老鼠且惊醒睡觉的主人,主人打猫,猫逃跑,老鼠乐了。实现方法:先定义对象、再定义动作、再定义事件实现理念:要事件驱动,关键事件MouseComeOut-老鼠出现、CatCry-猫叫、HitCat主人打猫*Mouse:ComeOut()、Escape()动作;订阅Cat.Cry()-->Escape()*Cat:Cry()、Smile()、Escape()动作;订阅Mouse.ComeOut()-->Cry()*Man:Wakeup()、HitCat()动作;订阅Cat.Cr 阅读全文

posted @ 2011-04-18 10:12 许明会 阅读(422) 评论(0) 推荐(0) 编辑

C #2.0特性之局部类型-空类型-静态类

摘要: 局部类型-空类型-静态类 【局部类型简介】 • 局部类型允许我们将一个类型(类、结构或者接口)分成几个部分,分别实现在几个不同的.cs文件中。 • 局部类型适用于以下情况: – 类型特别大,不宜放在一个文件中实现; – 一个类型中一部分代码为自动化工具生成的代码,不宜与我们自己编写的代码混合在一起。 • 局部类型是一个纯语言层的编译处理,不影响任何执行机制——事实上C#编译器在编译的时候仍会将各个部分的局部类型合并成一个完整的类。 局部类型的一些限制 • 局部类型只适用于类、结构、或接口,不支持委托或枚举。 • 同一个类型的各个部分必须都有修饰符partial。 • 使用局部类型时,一个类型. 阅读全文

posted @ 2011-04-18 08:55 许明会 阅读(392) 评论(0) 推荐(0) 编辑

2011年4月9日

三种方法构建简单的WEB服务器!

摘要: 《Essential ASP.NET 本质论》举例了Socket编程的基本知识,我稍加修改弄了个简单的应用。你可以将生成的EXE文件拷贝到服务器上,这样通过任意的WEB浏览器都可以获得该服务器的时间。这是一个仅仅显示服务器时间的WEB服务器,通过Socket、TcpListener、HttpListener三种方式实现,稍加修改可以作为其他应用。基本代码如下:三种方法实现的简单WEB服务器下载源代码usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Net;///&l 阅读全文

posted @ 2011-04-09 17:45 许明会 阅读(893) 评论(0) 推荐(1) 编辑

2011年4月6日

ADO.NET在C#环境中的事务Transaction示例

摘要: 为图方便省事,你可以在一个Command对象的CommandText属性指定多条以;分割的语句。这种情况下若没有事务,所有的语句都会被执行,若其中有语句出错,就导致了数据的不一致性。当然我们也可以写存储过程,在SQLServer的数据库系统内建存储过程的语句若没有事务,多条语句中的部分语句失效,一样导致数据的不一致性:你可以在存储过程内部Try/Catch/BeginTransaction等。Connection对象BeginTransaction启动事务,然后将事务赋值给Command对象的Transaction属性即挂接了事务。即使没有Commit 和Rollback,若执行中出现错误,事 阅读全文

posted @ 2011-04-06 22:07 许明会 阅读(2526) 评论(0) 推荐(0) 编辑

2011年3月28日

C#调用带参数的存储过程

摘要: 带参数的存储过程:默认参数、输出参数、返回值/*==============================================--Author:xuminghui--Createdate:2011/03/28--Description:带默认参数,输出参数和返回值的存储过程--=============================================CREATEPROCEDUREProcedureTest@myNamevarchar(20)output,@myAgeint=33ASBEGINSETNOCOUNTON;set@myName='xuminghu 阅读全文

posted @ 2011-03-28 23:09 许明会 阅读(975) 评论(0) 推荐(0) 编辑

2011年3月27日

ASP.NET 采用MasterPage 后的控件组织结构

摘要: 你可以在Page指令页设置启用Trace单页面跟踪,或者在Web.config中再启用全局跟踪,就可以看到Control Tree了。采用MasterPage后的页面结构如下: //Page --ASP.about_aspx // Master Page --ASP.site_master // (Master page markup and controls) // ContentPlaceHolder --HeadContent // Content page markup and server controls // (Master page markup and controls) / 阅读全文

posted @ 2011-03-27 00:16 许明会 阅读(420) 评论(0) 推荐(0) 编辑

2011年3月24日

嵌入式代码-表达式

摘要: 嵌入式代码块是在呈现页面的过程中执行的服务器代码。块中的代码可以执行编程语句,并调用当前页类中的函数。 解析表达式 在嵌入式代码块中,语法 <% = expression %> 用于解析表达式,并将其值返回到块中。 嵌入式代码块必须使用页的默认语言进行编写。例如,如果页的 @Page 指令包含特性 language="VB",则页将使用 Visual Basic 编译器对标有 runat="server" 的所有脚本块中的代码以及 <% %> 分隔符中的所有内嵌代码进行编译。 由于代码仅在呈现页的过程中执行,因此与将代码置于适当的 阅读全文

posted @ 2011-03-24 11:18 许明会 阅读(469) 评论(0) 推荐(0) 编辑

2011年3月22日

带参数的查询怎么写?

摘要: 陶新新同学问起带参数的ADO.NET怎么写,为什么要带参数?带参数的一个重要作用是安全,如防止SQL注入;再就是代码上更加规范,逻辑上更加清晰……usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Data;usingSystem.Data.Common;usingSystem.Data.SqlClient;///使用带参数的查询,基本方法如下:///写SQL语句,参数用@引导;有几个@参数就有几个SqlParameter对象;将所有的SqlParameter对象添加 阅读全文

posted @ 2011-03-22 16:31 许明会 阅读(727) 评论(1) 推荐(0) 编辑

2011年3月11日

DELL品牌机的Windows产品SLIC激活方法总结

摘要: DELL品牌机的Windows产品正版激活方法总结 基本信息: SLIC是各计算机品牌厂商都有的,用于OEM激活Windows的软件授权协议,用对应品牌厂商的OEM光盘安装系统后,能够自动激活。所以,主板上的SLIC信息和Windows安装光盘的OEM证书是OEM方式激活Windows系统的关键。所幸的是,有方法可以修改SLIC信息,导入OEM证书实现品牌的OEM激活。修改SLIC信息是关键! 查看SLIC信息: 先说SLIC信息的基本知识。可以通过软 EVERESTUltimate5.5查看主板的ACPI内的SLIC信息,或者用SLIC_ToolKit_V3.2也可以看到这些信息,如下图。. 阅读全文

posted @ 2011-03-11 17:22 许明会 阅读(7865) 评论(0) 推荐(0) 编辑

2011年3月10日

示例DataSet的构成组件,手工打造DataSet

摘要: usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Windows.Forms;usingSystem.Data.Common;usingSystem.Data.SqlClient;/*--===--------------------[DataSetCreateDemo]----------------------===---*DataSe 阅读全文

posted @ 2011-03-10 16:03 许明会 阅读(272) 评论(0) 推荐(0) 编辑

2011年3月9日

大容量数据传输UI无响应怎么办:异步查询大结果集!

摘要: 数据库管理程序中,如果涉及大容量的数据传输,在数据检索过程中可能导致UI无响应。这里模拟这个过程,并通过异步调用避免UI停滞问题。该示例有共有3个button和1个DataGridView控件,其中2个button用于分别正常检索数据和异步检索数据,另一个button用于绑定数据。异步调用实际是开启新的非UI线程处理数据,因此异步调用中弹出的对话框也是和用户UI没关系的。程序中让数据访问延时5秒,尝试拖动窗体看看效果。usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;u 阅读全文

posted @ 2011-03-09 16:19 许明会 阅读(683) 评论(0) 推荐(0) 编辑

DataGridView.DataSource=ArrayList 绑定示例

摘要: 用DataReader读取数据记录并填充到ArrayList,然后将DataGridView的DataSource绑定到ArrayList,就可以显示网格表数据了。代码如下:usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Windows.Forms;usingSystem.Data.SqlClient;usingSystem.Collec 阅读全文

posted @ 2011-03-09 08:46 许明会 阅读(1091) 评论(0) 推荐(0) 编辑

2011年3月6日

列举系统安装的所有可用的数据库提供程序

摘要: 示例:列举系统安装的所有可用的数据库提供程序usingSystem;usingSystem.Data;usingSystem.Data.Common;namespaceConsoleWin{publicclassCmdWin{publicstaticvoidMain(){Console.WriteLine("Hello,ThisisaConsoleLineApplicaiton!");DataTablefactoryClassesTable=DbProviderFactories.GetFactoryClasses();foreach(DataRowfactoryClass 阅读全文

posted @ 2011-03-06 01:12 许明会 阅读(264) 评论(0) 推荐(0) 编辑

2010年12月8日

Oracle10gR2在Ubuntu10.10下的安装配置及链接测试

摘要: Oracle10gR2在Ubuntu10.10下的安装 ★创建swap交换分区 dd if=/dev/zero of=tmp_swap bs=1k count=1024000 chmod 600 tmp_swap mkswap tmp_swap --echo “/swap swap swap defaults 0 0″/etc/fstab swapon tmp_swap --swap -a 激活所有的swap分区 完成安装以後,可以释放这个空间: swapoff tmp_swap rm tmp_swap 检查swap交换分区正常工作:cat /proc/swaps; swapon 阅读全文

posted @ 2010-12-08 15:14 许明会 阅读(409) 评论(0) 推荐(0) 编辑

Oracle10gR2Express在DebianBase下的安装

摘要: Oracle10gR2Express在DebianBase下的安装,参考方法 1、 准备swap分 区 dd if=/dev/zero of=tmp_swap bs=1k count=1024000 mkswap tmp_swap swapon tmp_swap free; swapon -s; cat /proc/swaps --查看,保证分区在1G以 上。 2、修改环境变量,如果打算中文显示的话 vim /etc/default/locale -- 1. LANG=”zh_CN.UTF-8″ vim /etc/environment NLS_LANG=”SIMPLIFIE 阅读全文

posted @ 2010-12-08 14:46 许明会 阅读(302) 评论(0) 推荐(0) 编辑

2010年12月3日

虚函数

摘要: 代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--//[7/29/2010xuminghui]/*基类的指针指向派生类的对象,呼叫某函数Func时:1、若基类的Func非虚函数,调用基类的Func函数2、若基类的Func是虚函数1)、若派生类重写Fu... 阅读全文

posted @ 2010-12-03 09:09 许明会 阅读(333) 评论(0) 推荐(0) 编辑

运行时类型识别 RTTI

摘要: 代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--#include<iostream>usingnamespacestd;classgraphic{public:virtualvoiddisplay()=0;};classGIF:publ... 阅读全文

posted @ 2010-12-03 09:08 许明会 阅读(152) 评论(0) 推荐(0) 编辑

变量及对象的作用域

摘要: 代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--#include<iostream>usingnamespacestd;classScope{public:Scope(constchar*infor);~Scope();private:... 阅读全文

posted @ 2010-12-03 09:08 许明会 阅读(153) 评论(0) 推荐(0) 编辑

对象切割 ObjectSlicing

摘要: /*TestONE:CDocument::func()CMyDoc::Serialize()TestTWO:CDocument::func()CMyDoc::Serialize()TestThree:CDocument::func()CMyDoc::Serialize()TestFour:CDocument::func()CDocument::Serialize()*/#include<iostream>usingnamespacestd;classCObject{public:virtualvoidSerialize(){cout<<"CObject::Se 阅读全文

posted @ 2010-12-03 09:07 许明会 阅读(248) 评论(0) 推荐(0) 编辑

类的继承和封装

摘要: 代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--#include<string.h>classCEmployee{private:charm_name[30];public:CEmployee(){};//此处,必须实现,以前C++版本... 阅读全文

posted @ 2010-12-03 09:06 许明会 阅读(223) 评论(0) 推荐(0) 编辑

抽象类

摘要: 代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--/**抽象类里面可以有非纯虚函数;抽象类的派生类必须重写抽象类的纯虚函数,否则这一派生类也是抽象类*/#include<iostream>usingnamespacestd;classCA... 阅读全文

posted @ 2010-12-03 09:05 许明会 阅读(222) 评论(0) 推荐(0) 编辑

游戏外挂最基本的按键模拟

摘要: 玩魔兽世界的时候,很多小号找大号带副本升级。台服在客户端不活动的情况下会强迫用户下线,导致尽管小号无事可做,还要在屏幕下等待。于是自己开发一个程序,让游戏角色保持活动,不至于下线。代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--///本程序僅僅監控... 阅读全文

posted @ 2010-12-03 09:02 许明会 阅读(1324) 评论(0) 推荐(0) 编辑

2010年12月2日

python体验(06)-Python处理mysql数据库

摘要: Python处理mysql数据库1、检查用户环境:已经安装mysql-server,已经安装python-mysqldb 组件 aptitude show mysql-server; aptitude show python-mysqldb2、创建数据库,创建表,添加数据,修改mysql数据库的密码为Oracle11g[代码]3、编写pyMysql.py测试程序[代码] 阅读全文

posted @ 2010-12-02 15:43 许明会 阅读(368) 评论(0) 推荐(0) 编辑

python体验(05).python处理sqlite数据库

摘要: python处理sqlite数据库1、检查用户环境是否安装sqlite aptitude show sqlite32、创建数据库,添加表并插入数据 sqlite3 myfamily[代码]3、编写代码[代码] 阅读全文

posted @ 2010-12-02 15:42 许明会 阅读(278) 评论(0) 推荐(0) 编辑

WIN32.02.改良版的Win32应用程序-封装

摘要: WIN32.02.改良版的Win32应用程序-封装 既然每个程序都需要注册窗口类,都需要CreateWindow、UpdateWidow、ShowWindow,那么我们应该把注册窗口类和窗口处理部分分别写入不同的函数,以方便调用。最好,我们有一个Window类实现这个功能。 /************************************************************... 阅读全文

posted @ 2010-12-02 15:37 许明会 阅读(345) 评论(1) 推荐(0) 编辑

2010年11月21日

Python体验(04)-字典dictionary

摘要: 代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--#!/usr/bin/python#filename:dict.py#'ab'iscommunicationbookab={'Bill':'billgates@microsoft.com','Kaif... 阅读全文

posted @ 2010-11-21 00:33 许明会 阅读(338) 评论(0) 推荐(0) 编辑

2010年11月20日

Python体验(03)-列表list和元组tuple

摘要: 示例1:LIST取得list长度len(list),向list追加元素list.append(),list排序list.sort(),删除list元素 del list[index] 代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--#!/usr/b... 阅读全文

posted @ 2010-11-20 23:35 许明会 阅读(271) 评论(0) 推荐(0) 编辑

Python体验(02)-模块Module

摘要: Module:mymodule.py[代码]实例1:直接导入模块,调用模块内函数及变量需要采用模块前缀。 [代码]实例2:显式导入模块函数及变量,调用模块的函数及变量不能加前缀。[代码] 阅读全文

posted @ 2010-11-20 22:35 许明会 阅读(183) 评论(0) 推荐(0) 编辑

Python体验(01)-变量、函数和基本控制语句

摘要: 今天安装了Debian5,没想到基础安装的情况下居然会有python,于是安装试试这个传说中的语言。下面通过一系列简单示例来体验,代码可以直接粘贴保存,都通过测试。我参照pdf学习的,大家可以从这个地址下载pdf文件. 案例1: #用于注释,但第一行#!也给程序指出本代码是靠/usr/bin/python执行的,所以文件名可以不是py如果你乐意,你可以给helloworld.py 增加属性X,这样... 阅读全文

posted @ 2010-11-20 21:23 许明会 阅读(319) 评论(0) 推荐(0) 编辑

2010年7月18日

WIN32.01.最简单的Windows应用程序

摘要: [代码] 阅读全文

posted @ 2010-07-18 19:56 许明会 阅读(318) 评论(0) 推荐(0) 编辑

2009年9月20日

don't push me

摘要: song title: don't push mei'm a love em and leave emtouch and thease em kinda girli'm the perfect type for one wild nightyeah i suffocate quickdoes that make me a bitchi don't really care thoughwell yo... 阅读全文

posted @ 2009-09-20 15:02 许明会 阅读(229) 评论(0) 推荐(0) 编辑

2009年9月19日

la la love on my mind

摘要: [ar:ann winsborn]《la la love on my mind》by ann winsbornla la la la la la…la la la la la la…mhmm...you're the la love of my life............one way ticket and of life to livepockets full of... 阅读全文

posted @ 2009-09-19 23:15 许明会 阅读(317) 评论(0) 推荐(0) 编辑

阮明雪 《偷喊你的名字》 -感动中……

摘要: 阮明雪 《偷喊你的名字》 Goi thm tên anh ln cui 最后一次在黑暗中呼唤你的名字 Con tim but nhoi trong êm su 望着忧郁的夜空 我的心被刺痛 Con lai gi khi tinh qua mau? 稍纵即逝的爱情到底留下了什么? Bao yêu du, nay cung theo gio tri i mit m. 亲爱... 阅读全文

posted @ 2009-09-19 22:41 许明会 阅读(524) 评论(1) 推荐(0) 编辑

2009年9月18日

给老婆弄了thinpad,纪念一下先

摘要: 今天收到给老婆买的thinkpad,花了7600大元。不过还值,配置比我低的也要17000大洋啊,如这款,因此我钟爱水货(港行新行……)。这个本本是港行货,cpu为8700,2G内存,250G硬盘,256独立显卡ATI HD3470,从ibm官网可见为9月2日生产香港发售,截图如下。其实有4:3的就好了,我死讨厌16:9的,不过没办法了。再就是这款机器6芯电池,撅着屁股占空... 阅读全文

posted @ 2009-09-18 17:22 许明会 阅读(304) 评论(0) 推荐(0) 编辑

2009年7月31日

2009年7月31日-笔记本又换了 thinkpad w500-rq3

摘要: 原来买的thinkpad T61 8889-A56存在先天的nvs 140m的显卡焊接缺陷,终于扛不住花屏了,花300元可以焊接,于是送维修点,然后维修点2天后告诉我被盗。坚守自盗还是其他不容的说,据说就因为我的笔记本好,就偷走了我的笔记本。无话可说,维修点赔款8000,自己又添了4500,拿下了thinkpad w500-rq3. 我不喜欢16:9的屏,不过也没有办法,被强奸了,还能变回原来吗。... 阅读全文

posted @ 2009-07-31 14:18 许明会 阅读(649) 评论(1) 推荐(0) 编辑

2009年7月27日

介绍几个水货IBM笔记本电脑卖点

摘要: 1、 http://www.91bjb.com2、http://www.shuihuoibm.com/3、http://www.51ibm.com/ 阅读全文

posted @ 2009-07-27 16:52 许明会 阅读(383) 评论(0) 推荐(0) 编辑

2009年6月26日

服务器及正版软件基本知识

摘要: 购买dell的服务器以后,通过光盘《System Management Tools and Documentation》光盘安装操作系统预安装环境(针对Windows Server 2003及以前的环境,Vista 和 后来的Server 2008都支持SAS硬盘,可以直接安装)。Dell服务器在用Dell的光盘启动预安装光盘安装完成后,在桌面上会有“Install Server Administrator”,请执行以安装“Server Administrator”,这个工具可以查看dell服务器的所有硬件及软件信息,包括类似Raid配置及服务编码等,该软件可以从官网下载。有了dell的服务编 阅读全文

posted @ 2009-06-26 10:40 许明会 阅读(460) 评论(1) 推荐(0) 编辑

2009年5月13日

重建需要为人民服务

摘要: 重建需要为人民服务我们不是为了纪念而活着,我们是为活得更好而活着。可是。北川准备花23亿修建地震纪念博物馆,青川准备打造一个50平方公里的地震公园,大邑的地震博物馆将在5.12这天开馆,汶川准备花费20多个亿修建一座现代化的地震博物馆。有时候我会产生不好的联想,就像看到一个人因事故断掉一条腿,大家给他捐钱,他没利用这笔钱为以后做下营生,却把这笔钱造了一条黄金腿,说是为了纪念。纪念本身是没有价值的,... 阅读全文

posted @ 2009-05-13 09:19 许明会 阅读(160) 评论(0) 推荐(0) 编辑

2009年5月7日

如何知道交换机的某port接入端的IP地址

摘要: Q:如何知道交换机的某port接入端的IP地址?S:通过以下3步骤可以实现:1)、在交换机上执行show ip arp可得到ip和mac的对应表;2)、在交换机上执行show mac-addr得到mac和端口的对应表;3)、比对两表就OK,一个port可以对应多个mac和ip。当然,可以用show ip arp IP直接得到IP的mac地址。 阅读全文

posted @ 2009-05-07 16:44 许明会 阅读(1109) 评论(0) 推荐(0) 编辑