eaglet

本博专注于基于微软技术的搜索相关技术
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

随笔分类 -  .NET

摘要:Windows 下可以用 * ? 作为通配符对文件名或目录名进行匹配。程序中有时候需要做这样的匹配,但.Net framework 没有提供内置的函数来做这个匹配。我写了一个通过正则进行匹配的方法。 阅读全文

posted @ 2013-01-31 14:36 eaglet 阅读(2464) 评论(3) 推荐(3) 编辑

摘要:.net 框架中提供的 System.Environment.GetFolderPath 只能获取当前用户的特殊目录,无法获取所有用户的特殊目录。我做了一个类,可以帮助获取所有用户的特殊目录。网上有很多相关的文章用的API是有些过时了,这篇文章中的API可以适用于windows 2000 后的任何操作系统。 阅读全文

posted @ 2012-05-23 14:39 eaglet 阅读(3199) 评论(1) 推荐(2) 编辑

摘要:.net 的 HttpWebRequest 或者 WebClient 在多线程情况下存在并发连接限制,这个机制会大大影响网络应用程序性能,本文讲述如何修改这个并发连接限制。 阅读全文

posted @ 2012-05-18 08:54 eaglet 阅读(15942) 评论(5) 推荐(4) 编辑

摘要:C# 程序重启计算机的方法很多,网上也有不少这方面的文章,不过很多网上提供的方法在某些情况下无法获取重启计算机的权限导致重启失败。本文对这些方法做一些简单的讨论。 阅读全文

posted @ 2012-04-13 13:54 eaglet 阅读(13059) 评论(11) 推荐(6) 编辑

摘要:google maps 的 KML 文件可以用于静态的地图标注,在某些应用中,我们手上往往有成百上千个地址,我们需要把这些地址和描述批量标注到 google maps 上去,如果手工来做,太耗时间,在这里我写了一个程序批量来生成这个 KML 文件。 阅读全文

posted @ 2011-12-05 12:59 eaglet 阅读(7140) 评论(1) 推荐(3) 编辑

摘要:性能测试的一些备忘 阅读全文

posted @ 2011-07-07 12:57 eaglet 阅读(916) 评论(3) 推荐(1) 编辑

摘要:在嵌入式应用和一些安全软件中经常需要不通过物理键盘输入,虽然微软提供了也一个软键盘,但这个软件盘不能定制界面不能自动感应当前光标是否处于输入状态,所以有时候我们还是需要自己来实现这个软键盘。本文将讲解自己实现软键盘时涉及到的几个关键技术。 阅读全文

posted @ 2011-05-20 06:28 eaglet 阅读(7115) 评论(17) 推荐(7) 编辑

摘要:Vista 和 Windows 7 操作系统为了加强安全,增加了 UAC(用户账户控制) 的机制,如果 UAC 被打开,用户即使是以管理员权限登录,其应用程序默认情况下也无法对系统目录,系统注册表等可能影响系统运行的设置进行写操作。这个机制大大增强了系统的安全性,但对应用程序开发者来说,我们不能强迫用户去关闭UAC,但有时我们开发的应用程序又需要以 Administrator 的方式运行,即 Win7 中 以 as administrator 方式运行,那么我们怎么来实现这样的功能呢? 阅读全文

posted @ 2011-04-22 08:34 eaglet 阅读(26476) 评论(18) 推荐(5) 编辑

摘要:本文大概研究了一下 SharpZipLib 的商业授权问题 阅读全文

posted @ 2011-04-20 14:59 eaglet 阅读(1423) 评论(1) 推荐(0) 编辑

摘要:如果你的程序希望在不同语言的操作系统上平滑移植,你必须要正确理解和设置区域性信息(CultureInfo),这个问题对于习惯了中文windows 操作系统的我们来说,往往非常容易忽略。一旦忽略这个问题,我们在中文windows操作系统下运行正常的程序跑在英文或者其他语言的操作系统上,比如台湾或香港版本的windows下,轻则显示不对,重则逻辑错误。下面就谈谈这个区域性信息对程序移植性的影响 阅读全文

posted @ 2010-06-08 09:19 eaglet 阅读(3949) 评论(16) 推荐(8) 编辑

摘要:在一些特殊的应用中,我们需要对类或结构体对象实例的私有字段赋值,比如我们需要改变某个只读属性(Readonly Property)的值,本文将重点介绍如何来实现这样的功能。特别是对结构体私有字段赋值,我们需要用到一个未公开关键字 __makeref 才能够实现。 阅读全文

posted @ 2010-05-26 10:38 eaglet 阅读(2023) 评论(0) 推荐(1) 编辑

摘要:昨天把我的 Hubble.net 项目在x64下测试发现有异常,但在32位操作系统下没有问题,抓狂!查了好几个小时最后发现居然是 LayoutKind.Explicit 的问题,网上搜索了半天,中英文的都看了,没找到为什么这个会造成.net 在不同平台上表现不一样,不管怎么样,我还是把这个问题写出来,大家看了以后可以避免犯同样的错误。 阅读全文

posted @ 2010-02-23 08:59 eaglet 阅读(4489) 评论(5) 推荐(0) 编辑

摘要:2008 年我写过一篇博客叫 《让.Net 应用程序突破2G的内存访问限制》这篇博客主要讲述了如何在32位操作系统下利用AWE 扩展访问超过2G的内存。AWE方式虽然可以访问超过2G的内存,但其本身也有一些问题,首先必须要锁定内存,其次需要自己写内存管理程序来管理这些内存,.net framework 无法在AWE 扩展的内存中创建托管堆。其实很多应用只是想申请比2G稍多一些的内存,最简单的方法还是采用/3GB开关来实现。本文将讲述如何利用 /3GB开关来让32位操作系统下.net 应用程序申请超过2GB的内存。 阅读全文

posted @ 2010-01-20 09:24 eaglet 阅读(6266) 评论(20) 推荐(2) 编辑

摘要:最近做了一个项目发现 Response.Redirect 后 Session 会丢失,搞了两天终于发现问题所在。 阅读全文

posted @ 2009-11-10 07:42 eaglet 阅读(5689) 评论(9) 推荐(1) 编辑

摘要: .Net 提供了一个NetworkStream 用于TCP 的读写,实际使用时发现直接操作效率很低,哪怕把TCP 的发送缓存和接受缓存设置很大也没有太大提高。后来在对 NetworkStream 读写前设置了缓存,性能一下子提高了很多。 阅读全文

posted @ 2009-11-04 13:01 eaglet 阅读(8888) 评论(16) 推荐(2) 编辑

摘要:WinForm 下我们可以调用MessageBox.Show 来显示一个消息对话框,提示用户确认等操作。在有些应用中我们需要通过程序来自动关闭这个消息对话框而不是由用户点击确认按钮来关闭。然而.Net framework 没有为我们提供自动关闭MessageBox 的方法,要实现这个功能,我们需要使用Window API 来完成。 阅读全文

posted @ 2009-07-24 10:04 eaglet 阅读(15644) 评论(22) 推荐(5) 编辑

摘要:我们日常工作中经常会遇到将字符串转换为值类型的问题,比如"123" 转换为一个Int32类型,这个很简单,我们只要调用int.Parse 函数就可以实现。eaglet 今天要说的是,一些应用中往往在编码阶段无法知道字符串需要转换成的值类型的具体类型,而需要在运行时动态指定类型进行转换,遇到这种问题,我们如何解决? 阅读全文

posted @ 2009-06-05 09:58 eaglet 阅读(4027) 评论(16) 推荐(0) 编辑

摘要:有人提出要用OO的思路来解决算法问题,OK,没问题,eaglet 今天就尝试用OO来实现算法。既然谈OO,我们就重点讨论设计,不重点讨论算法的效率了。 阅读全文

posted @ 2009-06-03 17:18 eaglet 阅读(2730) 评论(53) 推荐(0) 编辑

摘要:这两天老赵和老包为IL 是不是汇编语言交了火,eaglet 忍不住也想说两句。 阅读全文

posted @ 2009-06-02 10:24 eaglet 阅读(4906) 评论(44) 推荐(3) 编辑

摘要:昨天调试一段程序发现内存始终释放不掉,最后终于发现是对String 的错误使用造成,这促使我今天又仔细研究了一下String类型,不研究不知道,一研究发现我过去对String 的很多认识都是错误的,感觉这种错误认识还比较有典型性,于是写下此文和大家一起探讨。 阅读全文

posted @ 2009-05-13 16:00 eaglet 阅读(7292) 评论(35) 推荐(2) 编辑