许明会的计算机技术主页

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

导航

随笔分类 -  C#编码示例

上一页 1 2 3 4 5 下一页

WPF, WCF, WWF, CARDSPACE,C#语法及测试
p/invoke示例
摘要:usingSystem;usingSystem.Windows.Forms;usingSystem.Runtime.InteropServices;publicclassMyClass{[DllImport("user32.dll",EntryPoint="MessageBoxW")]publicstaticexternintMessageBoxW([In]System.IntPtrhWnd,[In][MarshalAs(UnmanagedType.LPWStr)]stringlpText,[In][MarshalAs(UnmanagedType.LPW 阅读全文

posted @ 2013-04-25 11:26 许明会 阅读(210) 评论(0) 推荐(0)

示例ConsoleApp查询SQLServer数据库
摘要:访问数据库的类usingSystem;usingSystem.Collections;usingSystem.Data.SqlClient;namespaceSQLCMD{publicpartialclassSqlCMD{SqlConnectionconnector=null;SqlCommandcommand=newSqlCommand();ArrayListalResult=newArrayList();//连接指定的数据库,初始化Command对象的Connection属性publicboolConnect(stringdatasource,stringdatabase,stringui 阅读全文

posted @ 2013-04-25 11:25 许明会 阅读(547) 评论(0) 推荐(0)

C#的基础类型
摘要: 阅读全文

posted @ 2013-04-20 22:39 许明会 阅读(162) 评论(0) 推荐(0)

多个托管模块构成同一个程序集
摘要:代码演示了一个assembly包含多个namespace,且该assembly包含两个不同编程语言实现的物理PE文件(托管代码),这没有问题。反问一个namespace可以包含多个assembly吗?答案是:当然没问题!同一namespace包含多个assembly 阅读全文

posted @ 2013-04-18 23:02 许明会 阅读(160) 评论(0) 推荐(0)

魔獸世界台服身份證ID生成器
摘要:魔獸世界台服要啟用battle.net 了,到時候全世界同步,享受同樣的待遇。但是我等大陸網民不屬於“全世界”,所以駐留在台服上需要重新註冊“戰網”了。理所當然,台服戰網要求註冊要求提供台灣人民的身份證ID等信息,我們沒辦法提供身份證,只能造假,當然冒著被盜號的風險(你沒身份證怎麼找回?)完美主義者,辦假證也要辦個好的,那麼怎麼能取得一個比較亮的身份證呢,需要自己開發了。哎,這麼個簡單的代碼,我居然用了一天的時間,沒天賦啊。我希望身份證全部帶8,或者全部帶6,或者我希望的任意的號碼!好吧,台灣身份證共10位,第一位為所在地,第二位為男女,你可以指定裡面的8個數字,讓程序填寫第一位和最後一位;甚 阅读全文

posted @ 2011-04-26 17:26 许明会 阅读(2522) 评论(0) 推荐(0)

class之new和ctor意义及作用域
摘要:new关键字计算class占用的字节数,并在堆上分配空间。class的ctor默认构造函数实现class内部所有成员的默认值赋值;如果你定义了带参构造函数,那么编译器不会自动生成默认构造;假设类要被继承,尽管派生类实例化按照派生类的带参构造方式实例化,但是对象生成树还是调用基类的默认构造,所以,一个类如果没有默认构造,该类不能被派生。作用域(变量或者方法):private:仅在类内部可访问protected:仅在类及其派生类内部访问internal:仅在同一个程序集(dll)内可以访问。程序集内可以包含多个命名空间,每个命名空间也可以包含很多类。protected internal:当前程序集 阅读全文

posted @ 2011-04-21 23:38 许明会 阅读(470) 评论(0) 推荐(0)

WMI操作示例
摘要:利用WMI可以实现对本地及远程主机的信息获取及操作,本示例WMI的应用。 1 System.Management.ConnectionOptions options = new ConnectionOptions(); 2 options.Username=@"lypower\Administrator"; 3 options.Password=@"your password here "; 4 System.Management.ManagementScope ms = new ManagementScope(@"\\remoteIP\roo 阅读全文

posted @ 2011-04-21 17:08 许明会 阅读(356) 评论(0) 推荐(0)

创建动态链接库的方法简介
摘要:有多个不同的cs文件,基本信息如下Add.cs文件MathLibrary空间含有类 Add()方法;Mult.cs文件MathLibrary空间含有 Mult()方法。此时你建立TestCode.cs文件,命名空间 MathLibrary里面写一个静态的Main()方法,可以直接调用Add()和Mult()完成测试。现在你要发布你的动态链接库,可以将Add.cs和Mult.cs打包成DLL文件提交,方法如下:csc /t:libray /out:MathTest.dll Add.cs Mult.cs编译dll后方法Add()和Mult()都在MathLibrary命名空间下,只要引用MathL 阅读全文

posted @ 2011-04-20 20:52 许明会 阅读(225) 评论(0) 推荐(0)

MD5和SHA加密测试
摘要:有关MD5和SHA加密,程序在SharpDevelop环境下测试。注意XP只支持MD5和SHA1,其他的不受XP系统支持。usingSystem;usingSystem.Net.NetworkInformation;namespaceDemoConsole{classProgram{publicstaticvoidMain(string[]args){ byte[]bytes = System.Text.Encoding.UTF8.GetBytes("XU Minghui");System.Security.Cryptography.MD5CryptoServiceProv 阅读全文

posted @ 2011-04-20 20:31 许明会 阅读(418) 评论(0) 推荐(0)

获取网卡信息
摘要:获取网卡的基本信息:名称、MAC地址、网卡描述信息、IP地址、网关、DNS等。基本方法:NetworkInterface类获取gateway和dns信息;System.Net.Dns类获取IP地址。示例如下:/** Created by SharpDevelop.* User: JACK* Date: 2011-4-20* Time: 18:47** To change this template use Tools | Options | Coding | Edit Standard Headers.*/usingSystem;usingSystem.Net.NetworkInformati 阅读全文

posted @ 2011-04-20 19:55 许明会 阅读(439) 评论(0) 推荐(0)

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

posted @ 2011-04-18 10:16 许明会 阅读(346) 评论(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 许明会 阅读(430) 评论(0) 推荐(0)

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

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

三种方法构建简单的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 许明会 阅读(901) 评论(0) 推荐(1)

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

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

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

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

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 许明会 阅读(426) 评论(0) 推荐(0)

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

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

带参数的查询怎么写?
摘要:陶新新同学问起带参数的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 许明会 阅读(769) 评论(1) 推荐(0)

示例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 许明会 阅读(283) 评论(0) 推荐(0)

上一页 1 2 3 4 5 下一页