- 博客(53)
- 资源 (143)
- 收藏
- 关注
原创 ArrayList的使用(二)
4、ArrayList与数组转换 例1: ArrayList List = new ArrayList(); List.Add(1); List.Add(2); Int32[] values = (Int32[])List.ToArray(typeof(Int32)); Int32[] values = new Int32[List.Count]; List.Co
2007-07-31 15:57:00 541
原创 ArrayList的使用(一)
1、什么是ArrayList ArrayList就是动态数组: 动态的增加和减少元素 实现了ICollection和IList接口 灵活的设置数组的大 2、如何使用ArrayList 最简单的例子: ArrayList List = new ArrayList(); List.RemoveAt(0);//将第1个元素移除
2007-07-31 13:54:00 660
原创 System.Threading.Timer类的TimerCallback 委托
Written by: Rickie LeeNov. 19, 2004System.Threading.Timer 是一个使用回调方法的计时器,而且由线程池线程服务,简单且对资源要求不高。 只要在使用 Timer,就必须保留对它的引用。对于任何托管对象,如果没有对 Timer 的引用,计时器会被垃圾回收。即使 Timer 仍处在活动状态,也会被回收。当不再需要计时器时,请使用 Di
2007-07-31 13:33:00 721
原创 ADO.net操作数据库总结
一.用SqlConnection连接SQL Server 1..加入命名空间 using System.Data.SqlClient; 2.连接数据库 SqlConnection myConnection = new SqlConnection(); myConnection.ConnectionString = "user id=sa;password=sinofindb;initial c
2007-07-31 13:17:00 625
转载 ThreadPool in .Net
在多线程的程序中,经常会出现两种情况。一种情况下,应用程序中的线程把大部分的时间花费在等待状态,等待某个事件发生,然后才能给予响应;而另外一种情况则是线程平常都处于休眠状态,只是周期性地被唤醒。这里分析及介绍.Net Framework中ThreadPool class来对付第一种情况,相应地也会谈到QueueUserWorkItem方法和WaitCallback委托。而使用Timer(Syste
2007-07-30 09:37:00 620
转载 从追MM谈Java的23种设计模式
1、FACTORY—追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory. 工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:如何创
2007-07-28 12:44:00 575
原创 常用的正则表达式
匹配中文字符的正则表达式: [/u4e00-/u9fa5]匹配双字节字符(包括汉字在内):[^/x00-/xff]应用:计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)String.prototype.len=function(){return this.replace([^/x00-/xff]/g,"aa").length;}匹配空行的正则表达式:/n[/s| ]*
2007-07-28 12:15:00 499
原创 正则表达式语法
下表是元字符及其在正则表达式上下文中的行为的一个完整列表: 字符 描述 / 将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,n 匹配字符 "n"。/n 匹配一个换行符
2007-07-27 19:07:00 568
原创 Visual Studio 2008 Beta2发布
详情请产看:http://msdn2.microsoft.com/en-us/vstudio/aa700831.aspx
2007-07-27 14:22:00 511
原创 实现网站的自动登录
首先打开网站,查看源文件,找到他的登录表单部分。现使用的表单如下: 以上__VIEWSTATE,textBoxRq,textBoxZh,textBoxMm,btnLogin五个字段缺一不可(当然若果少几个,代码编写更容易)。代
2007-07-26 21:46:00 1102
原创 INI文件编程
在我们写的程序当中,总有一些配置信息需要保存下来,以便完成程序的功能,最简单的办法就是将这些信息写入INI文件中,程序初始化时再读入.具体应用如下: 一.将信息写入.INI文件中. 1.所用的WINAPI函数原型为: BOOL WritePrivateProfileString ( LPCTSTR lpAppName, LPCTSTR lpKeyName, L
2007-07-26 17:37:00 687
转载 六种方法,做一名更好的开发者
1. 交谈尽可能多地跟其他软件开发者交谈;培养个人关系;跟意见与你相左的人交流;跟经验更丰富的人交流;跟阅历丰富的人交流。多到Groups 中去,尤其是交谈自由随意的Groups——不约束主题,不约束交谈内容。2. 选择更好的环境我遇到好多开发者,在我看来他们有成为优秀开发者的所有优点,只是他们没有机会在好的环境中工作。这里所说的好的环境,是指周围有一帮愿意且能
2007-07-25 17:51:00 557
原创 从大学生到程序员
1、大学生活丰富多彩,会令你一生都难忘,但难忘有很多种,你可以学了很多东西而难忘,也会因为什么都没学到而难忘! 2、计算机专业是一个很枯燥的专业,但即来之、则安之,只要你努力学,也会发现其中的乐趣的。 3、记住:万丈高楼平地起!基础很重要,尤其是专业基础课,只有打好基础才能学得更深。 4、C语言是基础,很重要,如果你不学好C语言,那么什么高级语言你都学不好。 5、C语言与
2007-07-25 17:42:00 1123
原创 GetLastError返回值的意义(七)
〖9001〗-DNS 服务器无法解释格式。 〖9002〗-DNS 服务器失败。 〖9003〗-DNS 名称不存在。 〖9004〗-名称服务器不支持 DNS 请求。 〖9005〗-拒绝 DNS 操作。 〖9006〗-不应该存在的 DNS 名称仍然存在。 〖9007〗-不应该存在的 DNS RR 集仍然存在。 〖9008〗-应该存在的 DNS RR 集不存在。 〖9009〗-DNS 服务器对区域没有权
2007-07-24 10:29:00 2598
原创 GetLastError返回值的意义(六)
〖5000〗-注销网络 〖5001〗-因为其它资源需要它,不能将群集资源移到另一个组。 〖5002〗-找不到此群集资源的依存。 〖5003〗-因为已经处于依存状态,此群集资源不能依存于指定的资源。 〖5004〗-此群集资源未联机。 〖5005〗-此操作没有可用的群集节点。 〖5006〗-没有群集资源。 〖5007〗-找不到群集资源。 〖5008〗-正在关闭群集。 〖5009〗-因为联机,群集节点无
2007-07-24 10:28:00 2663
原创 GetLastError返回值的意义(五)
〖4000〗-WINS 在处理命令时遇到错误。 〖4001〗-本地的 WINS 不能删除。 〖4002〗-文件导入操作失败。 〖4003〗-备份操作失败。是否先前已作过完整备份? 〖4004〗-备份操作失败。请检查您备份数据库的目录。 〖4005〗-WINS 数据库中没有这个名称。 〖4006〗-不允许复制一个尚未配置的伙伴。 〖4100〗-DHCP 客户获得一个在网上已被使用的 IP 地址。 直
2007-07-24 10:27:00 4121
原创 GetLastError返回值的意义(四)
〖3000〗-指定了未知的打印监视器。 〖3001〗-指定的打印机驱动程序当前正在使用。 〖3002〗-找不到缓冲文件。 〖3003〗-未发送 StartDocPrinter 调用。 〖3004〗-未发送 AddJob 调用。 〖3005〗-指定的打印处理器已经安装。 〖3006〗-指定的打印监视器已经安装。 〖3007〗-该指定的打印监视器不具备所要求的功能。 〖3008〗-该指定的打印监视器
2007-07-23 18:10:00 2249
原创 GetLastError返回值的意义(三)
〖2000〗-无效的像素格式。 〖2001〗-指定的驱动程序无效。 〖2002〗-窗口样式或类别属性对此操作无效。 〖2003〗-不支持请求的图元操作。 〖2004〗-不支持请求的变换操作。 〖2005〗-不支持请求的剪切操作。 〖2010〗-指定的颜色管理模块无效。 〖2011〗-制定的颜色文件配置无效。 〖2012〗-找不到指定的标识。 〖2013〗-找不到所需的标识。 〖2014〗-指定的标
2007-07-23 18:10:00 3416
原创 GetLastError返回值的意义(二)
〖1001〗-递归太深;栈溢出。 〖1002〗-窗口无法在已发送的消息上操作。 〖1003〗-无法完成此功能。 〖1004〗-无效标志。 〖1005〗-此卷不包含可识别的文件系统。请确定所有请求的文件系统驱动程序已加载,且此卷未损坏。 〖1006〗-文件所在的卷已被外部改变,因此打开的文件不再有效。 〖1007〗-无法在全屏幕模式下运行请求的操作。 〖1008〗-试图引用不存在的令牌。 〖1009
2007-07-23 18:10:00 3754 6
原创 GetLastError返回值的意义(一)
〖0〗-操作成功完成。〖1〗-功能错误。〖2〗-系统找不到指定的文件。〖3〗-系统找不到指定的路径。〖4〗-系统无法打开文件。〖5〗-拒绝访问。〖6〗-句柄无效。〖7〗-存储控制块被损坏。〖8〗-存储空间不足,无法处理此命令。〖9〗-存储控制块地址无效。〖10〗-环境错误。〖11〗-试图加载格式错误的程序。〖12〗-访问码无效。〖13〗-数据无效。〖14〗-存储器不足,无法完成此操作。〖15〗-系
2007-07-23 18:09:00 2785
原创 20世纪10个最伟大的算法
由Computer in Science &Enigeering和IEEE Computer Society联合评选出来的20世纪10个最伟大的算法:1、蒙特卡罗算法。1946: John von Neumann, Stan Ulam, and Nick Metropolis2、单纯形方法。1947: George Dantzig,学过运筹学的人都知道:)3、Krylov 子空间迭
2007-07-20 16:01:00 1440
原创 FTP WinInet APIs Report Error 12003
Symptoms Connection to a non-Microsoft FTP server with WinInet FTP APIs may fail with error 12003. Cause When connecting to a non-Microsoft FTP
2007-07-20 13:01:00 3504
原创 InternetGetLastResponseInfo函数
InternetGetLastResponseInfo()函数是与GetLastError配套使用的,例如在GetLastError()函数所取得的值为12003即ERROR_INTERNET_EXTENDED_ERROR时,即可以调用InternetGetLastResponseInfo()获取具体的错误信息:if (GetLastError() == ERROR_INTERNET_E
2007-07-19 20:01:00 7388 3
原创 FormatMessage简单使用和说明
常用参数简介.FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM|FORMAT_MESSAGE_ALLOCATE_BUFFER, NULL,lVal,NULL,(LPTSTR)&hLocal,0,NULL); 第一个参数是标志,告诉这个FormatMessage函数,我想要的特点.第三个参数是DWORD(unsigned long)类型第五个参数是LPTSTR(
2007-07-19 17:13:00 1795
转载 关于攻读计算机研究生
如果你有实际开发工作经验,感觉自己的水平和实力进入了一个高原期,迫切需要从理论上提高,那么计算机学院是唯一选择。因为计算机学院才能让你在理论上 更上一层楼。软件学院从教学计划上就没有把你往这方面带。当然能不能更上一层楼最终还是完全取决于你自己。需要特别说明的是,工作经验并不一定等于开发经 验,我见过很多工作2-3年的人,但是没有一点开发经验。 你说:“他们都有很强的开发能力,只是不太喜欢
2007-07-18 18:22:00 525
原创 深入解析钩子和动态链接库(下)
/***************************************************************** clearMyHook* Inputs:* HWND hWnd: Window whose hook is to be cleared* Result: BOOL* TRUE if
2007-07-17 14:29:00 663
原创 深入解析钩子和动态链接库(中)
你必须做的第一件事是创建共有的数据段。所以我们使用# pragma data_seg声明。使用某一好记的数据段名字(它必须是没有比8 个字符长) 。我想强调名字是任意的,这里使用了我自己的名字。我发现如果我使用好的名字象.SHARE 或.SHR 或.SHRDATA,别人会认为名字有特殊的意义。但是,我要说NO。# pragma data_seg(".JOE")HANDLE hW
2007-07-17 14:27:00 721
原创 深入解析钩子和动态链接库(上)
下载源代码 - 22 Kb 对于如何使用和创建钩子有许多的争议,这篇文章试图澄清这些问题。 注意:如果你只是在自己的进程内使用钩子则不会有下面的问题, 这只发生在你使用系统钩子的时候。关键问题在于 地址空间,DLL函数中的代码所创建的任何对象(包括变量)都归调用它的线程或进程所有。当进程在载入DLL时,操作系统自动把DLL地址映射到该进程的私有空间,也就是进程的虚拟地址空间,而且也复制该D
2007-07-16 18:07:00 781
原创 使用用户自定义消息
第一步:定义消息。一个消息实际上是开发 Windows95 应用程序时, Microsoft 推荐用户自定义消息至少是 WM_USER+100 ,因为很多新控件也要使用 WM_USER 消息。第二步:实现消息处理函数。该函数使用 WPRAM 和 LPARAM 参数并返回 LPESULT 。LPESULT CMainFrame::OnMyMessage(WPARAM wParam, LPARAM
2007-07-16 09:20:00 887
原创 不去深圳研究生院的理由
建校缘由(2003版):深圳市政府已经意识到自己已经渐渐失去了改革开放时期的龙头地位,为了摆脱自己在科技人才上和北京、上海等城市的巨大差距,逐渐使得本地经济发展由劳动密集型向科技密集型过度,深圳市政府为北京大学、清华大学、南开大学和哈尔滨工业大学每所学校投资2个亿,兴建了一个大学城,目的无非有三个,第一,培养人才(套话),第二,发展科技,第三,逐步实现产业结构的转轨(因为研究生毕业之后可
2007-07-14 13:52:00 2312
原创 关于人工智能(AI)
AI的范围很广,包括很多子领域,单纯说哪个学校AI最强,没有一个明确的答案,具体到哪个老师的话或实验室的话,比较强的有:1.清华智能技术与系统国家重点实验室: 张钹院士 马少平组:信息检索 孙茂松组:自然语言处理2.清华大学自动化系: 张长水组:机器学习,模式识别3.北大视觉听觉信息处理国家重点实验室: 封富举组:生物特识别(人脸识别),机器学习 查洪彬组:计算机视觉,机器人,
2007-07-14 13:52:00 1262
原创 DataAdapter对象
1 DataAdapter对象的常用属性DataAdapter对象的工作步骤一般有两种,一种是通过Command对象执行SQL语句,将获得的结果集填充到DataSet对象中;另一种是将DataSet里更新数据的结果返回到数据库中。DataAdapter对象的常用属性形式为 XXXCommand,用于描述和设置操作数据库。使用DataAdapter对象,可以读取、添加、更新和删除数据源中的
2007-07-13 14:35:00 9050 1
原创 DataSet对象
DataSet对象可以用来存储从数据库查询到的数据结果,由于它在获得数据或更新数据后立即与数据库断开,所以程序员能用此高效地访问和操作数据库。并且,由于DataSet对象具有离线访问数据库的特性,所以它更能用来接收海量的数据信息。1 DataSet对象概述DataSet是ADO.NET中用来访问数据库的对象。由于其在访问数据库前不知道数据库里表的结构,所以在其内部,用动态XML的格式来存
2007-07-12 18:32:00 6193
原创 ADO.NET对象模型
ADO.NET对象模型中有5个主要的数据库访问和操作对象,分别是Connection、Command、DataReader、DataAdapter和DataSet对象。其中,Connection对象主要负责连接数据库,Command对象主要负责生成并执行SQL语句, DataReader对象主要负责读取数据库中的数据,DataAdapter对象主要负责在Command对象执行完SQL语句后生成
2007-07-12 18:31:00 2366 1
原创 禁止运行多个实例最简单的方法
给**App类加上一个成员变量:HANDLE m_hMutex;在程序应用(通常是**App)对象的初始化函数InitInstance()中加入如下代码:m_hMutex = CreateMutex(NULL,TRUE,AfxGetAppName()); if((m_hMutex != NULL) &&(GetLastError()==ERROR_ALREADY_EXISTS))
2007-07-11 14:53:00 957
原创 DataReader对象
1 DataReader对象的常用属性DataReader对象提供了用顺序的、只读的方式读取用Command对象获得的数据结果集。由于 DataReader只执行读操作,并且每次只在内存缓冲区里存储结果集中的一条数据,所以使用DataReader对象的效率比较高,如果要查询大量数据,同时不需要随机访问和修改数据,DataReader是优先的选择。DataReader对象有以下常用属性。
2007-07-10 20:22:00 1961
转载 C#开发的两个原则的深入讨论
使用属性,避免将数据成员直接暴露给外界 学习研究.NET的早期,经常碰到一些学习C#/.NET的朋友问,要属性这种华而不实的东西做什么?后来做项目时也时常接到team里的人的抱怨反馈,为什么不直接放一个public字段?如:class Card{ public string Name;} 而非要做一个private字段+public属性?class Card{ private string
2007-07-10 20:22:00 448
转载 工作还是考研,跳槽还是坚守..如何面对选择
许多同学应该都还记得联考前夕的焦虑:差一分可能要掉好几个志愿,甚至于一生的命运 从此改观!到了大四,这种焦虑可能更强烈而复杂:到底要先当兵,就业,还是先考研究 所? 我就经常碰到学生充满焦虑的问我这些问题。可是,这些焦虑实在是莫须有的!生命是 一 种长期而持续的累积过程,绝不会因为单一的事件而毁了一个人的一生,也不会因为单一 的事件而救了一个人的一生。属于我们该得的,迟早会得到;属于我们不该得的,
2007-07-09 19:23:00 1190
原创 复制一个文件夹到另一个文件夹
using System;using System.Collections.Generic;using System.Text;using System.IO;namespace IISControlService{ public class Utility { public static void LogToFile(string msg, LogState state
2007-07-09 19:23:00 889
原创 在.NET中使用域对象持续模式
当我们开发那些使用了关系数据库的面向对象应用程序的时候,建立与数据库设计一致的域对象设计可以使应用程序更容易理解,这是因为在典型情况下,域对象表现了现实的"实体"和它们彼此之间的关系。因此,在很多情形下,域对象都被"映射"为关系数据库表和表间关系。但是,这种映射非常容易出错,从而以不合需要的域对象设计为终结。域对象的良好设计要求开发者对面向对象和关系的基本原理有深刻的理解。 域对象持续(D
2007-07-07 15:41:00 415
Microsoft.Press.Microsoft.SQL.Server.2005.Applied.Techniques.Step.by.Step.zip
2007-06-19
Microsoft.Press.Microsoft.SQL.Server.2005.Applied.Techniques.Step.by.Step.z05
2007-06-19
Microsoft.Press.Microsoft.SQL.Server.2005.Applied.Techniques.Step.by.Step.z06
2007-06-19
Microsoft.Press.Microsoft.SQL.Server.2005.Applied.Techniques.Step.by.Step.z04
2007-06-19
Microsoft.Press.Microsoft.SQL.Server.2005.Applied.Techniques.Step.by.Step.z03
2007-06-19
Microsoft.Press.Microsoft.SQL.Server.2005.Applied.Techniques.Step.by.Step.z02
2007-06-19
Microsoft.Press.Microsoft.SQL.Server.2005.Applied.Techniques.Step.by.Step.z01
2007-06-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人