![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
.NET
bigzoom
生活的理想,理想的生活
展开
-
C#实现快捷键(系统热键)响应
C#实现快捷键(系统热键)响应在应用中,我们可能会需要实现像Ctrl+C复制、Ctrl+V粘贴这样的快捷键,本文简单介绍了它的实现,并给出了一个实现类。(1)建立一个类文件,命名为HotKey.cs,代码如下:using System;using System.Collections.Generic;using System.Runtime.InteropServices;using System...原创 2009-09-24 09:29:56 · 68 阅读 · 0 评论 -
c#注册热键 及热键虚拟表
static extern bool RegisterHotKey( IntPtr hWnd, int id, uint fsModifiers, Keys vk );VK--keys.XXX 或者static extern int RegisterHotKey(IntPtr hwnd, int id, int fsModifiers, int vk);虚拟键值表--》vk{ V...2009-09-24 09:40:54 · 71 阅读 · 0 评论 -
c#截获系统消息
如何截获系统消息,比如说系统关机的消息等等。 实现这项功能最基本的一个函数就是WndProc(ref Message message)函数,其次我们还要知道系统消息的代码值,比如说关机消息的代码值就是0x0011。接下来我们以关机消息为例进行讲解: 首先定义关机消息代码值private const int WM_QUERYENDSESSION = 0x0011; //关机消息...2009-09-24 10:25:53 · 378 阅读 · 0 评论 -
系统消息代码值
按名称排列 按代码排列 消息 代码 代码 消息 WM_ACTIVATE 0x0006WM_ACTIVATEAPP 0x001CWM_AFXFIRST 0x0360 WM_AFXLAST 0x037F WM_APP 0x8000 WM_APPCOMMAND 0x0319 WM_ASKCBFORMATNAME 0x030C WM_CANCELJOURNAL 0x...2009-09-24 10:31:01 · 383 阅读 · 0 评论 -
c#操作浏览器dom对象
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;namesp...2009-04-07 13:46:45 · 850 阅读 · 0 评论 -
NHibernate链接access数据库的配置文件
NHibernate链接access数据库的配置文件:官方没有提供链接access数据的专门的类,建议使用NHibernate.Dialect.SybaseDialect。它可以兼容对access数据库的操作。方法:在app.config文件中配置如下信息: NHibernate.Dialect.SybaseDialect NHibernate.Conn...2008-09-27 16:30:37 · 151 阅读 · 0 评论 -
以编程方式点击一个按钮
如何以编程方式触发一个按钮的点击事件呢,我们可以借助于UIAutomationProvider.dll类库实现我们的要求。具体做法就是:1.首先添加UIAutomationProvider.dll的引用2.添加程序集[code="c#"]using System.Windows.Automation.Peers;using System.Windows.Automation.Pro...2009-10-20 10:47:35 · 226 阅读 · 0 评论 -
LINQ方法简介
·Select - Select选择;延迟 ·Where - Where查询;延迟 ·OrderBy - 按指定表达式对集合正序排序;延迟 ·OrderByDescending - 按指定表达式对集合倒序排序;延迟 ·GroupBy - 分组;延迟 ·Join - Join查询;延迟 ·GroupJoin - 分组Join查询;延...2009-10-30 09:43:37 · 98 阅读 · 0 评论 -
在asp.net 2.0中发送邮件
1、在web.config中的<configuration>内加入如下配置信息(host—smtp服务地址;port—端口号;userName—用户名;password—密码。请自行修改)。 <system.net> <mailSettings> <smtp> <network host="smtpser...原创 2009-10-30 10:15:30 · 115 阅读 · 0 评论 -
asp.net 2.0中通过压缩ViewState改善性能
介绍开发人员经常担心他们web站点的性能。每一个开发者都想他们的web站点的性能是最优化的。影响你web站点性能的有很多因素,ViewState就是其中之一。本文我将给大家提供一个通过压缩ViewState来改善性能的方法。什么是ViewState虽然本文并不是专门来研究ViewState的,但我们还是简单的讨论一下吧。你如果看过web form生成的HTML代码的话,就会发现在一个名为__VIE...原创 2009-10-30 10:37:13 · 80 阅读 · 0 评论 -
Enterprise Library
Enterprise Library 3.1(截止2008年6月的最新版本为3.1,4.0正在开发中) 发行包含下列程序块: 缓存应用程序块。开发人员可以使用这个应用程序块向应用程序中加入本地缓存。 密码应用程序块。开发人员可以使用这个应用程序块向应用程序中加入哈希和对称加密。 数据访问应用程序块。开发人员可以使用这个应用程序块向应用程序中加入标准数据库功能。 异常处理应用...2009-10-30 13:30:26 · 63 阅读 · 0 评论 -
linq to sql 操作存储过程、函数总结(一)
LINQ to SQL数据模型像下面这样写LINQ的查询表达式: 当你像这样写LINQ 查询表达式时,LINQ to SQL 模型将会执行必要的动态SQL语句来检索出跟你的查询匹配的产品对象。在这篇帖子中你将学到,你也可以选择将数据库中的存储过程遇到到你的LINQ to SQL DataContext类中,存储过程会允许你调用它来完成对产品对象的检索功能。 这种数据模型的既...原创 2009-11-05 16:09:36 · 688 阅读 · 0 评论 -
linq to sql 操作存储过程、函数总结(二)
将我们的存储过程像上面那样让它返回一个"Product"对象的其中一个非常酷的事情是:linq to sql 将会像跟踪通过linq 查询返回的产品对象那样自动跟踪的通过该存储过程返回的product对象的变化。当我们调用这个DataContext类上的"SubmitChanges()"方法时,我们对该对象所做的任何的变动将会自动地被保存回数据库中。例如,我们可以写如下的代码来(用存储过程)检索数...原创 2009-11-05 17:01:49 · 160 阅读 · 0 评论 -
.NET使用NLog记录日志信息(一)
应用程序跟踪介绍很久以前,在那个没有调试器,软件也大都是基于控制台的年代里,开发者习惯于使用printf()语句输出跟踪调试信息。而现在,世界发生了翻天覆地般的变化——printf()被Console.WriteLine()代替了……我们都曾经书写过类似如下的代码: static void Main() { Console.WriteLine("SuperA...原创 2009-11-06 15:51:27 · 782 阅读 · 0 评论 -
.NET使用NLog记录日志信息(二)
日志配置 下面我们来看一下NLog的配置原理。于其他工具不同,NLog将在程序启动时尝试进行自动配置,换句话说,NLog将自动在某些默认位置中搜索其配置文件。当NLog和标准的exe文件配合使用时,将自动按照顺序搜索下列路径,以得到配置文件: 应用程序的标准配置文件(通常为applicationname.exe.config) 应用程序所在目录中的applicationname.ex...原创 2009-11-06 15:52:37 · 425 阅读 · 0 评论 -
.NET使用NLog记录日志信息(三)
自动重新配置NLog的配置文件将在程序启动之后自动加载。对于某些将长时间运行的进程(例如Windows服务或ASP.NET应用程)来说,往往需要在程序运行当中临时性地提高记录等级,而这时我们却并不希望重新启动该应用程序。NLog可以自动跟踪其配置文件的变化,一旦配置文件被修改,NLog将立即自动重新加载。我们可以通过在配置文件中设置<nlog autoReload="true" />...原创 2009-11-06 15:54:08 · 305 阅读 · 0 评论 -
.NET开源项目介绍及资源推荐:日志记录
在项目开发中,日志记录是任何时候都少不了的,在本文中,将简单介绍一下如下几种日志记录工具,以及推荐一些学习的资源:1.Log4net2.Logging Application Block3.NLog 一.Log4netLog4net是从java平台下非常优秀的日志记录框架log4j上移植到.NET下的,它是apache基金资助的项目的一部分。Log4net可以帮助我们把日志...原创 2009-11-06 16:00:09 · 86 阅读 · 0 评论 -
Log4Net使用指南
1 简介 1.1 Log4net的优点: 几乎所有的大型应用都会有自己的用于跟踪调试的API。因为一旦程序被部署以后,就不太可能再利用专门的调试工具了。然而一个管理员可能需要有一套强大的日志系统来诊断和修复配置上的问题。 经验表明,日志记录往往是软件开发周期中的重要组成部分。它具有以下几个优点:它可以提供应用程序运行时的精确环境,可供开发人员尽快找...原创 2009-11-06 16:08:55 · 67 阅读 · 0 评论 -
Log4Net五步走
本文不是教你全面了解log4net,本文只是希望教会你按步就班,照糊芦画瓢般就会用log4net1,引入log4net.dll组件2,建立一个配置文件两种方法,一种是在Web.Config或App.Config里加入以下配置节<configSections> <section name="log4net" type="log4net.Config.Log4NetConfigura...原创 2009-11-06 16:09:52 · 58 阅读 · 0 评论 -
NLog处理异常使用说明书
一.NLog简要介绍: 1.NLog是一个简单灵活的.NET日志记录类库。通过使用NLog,我们可以在任何一种.NET语言中输出带有上下文的(contextual information)调试诊断信息,根据喜好配置其表现样式之后发送到一个或多个输出目标(target)中。 2.NLog的API非常类似于log4net,...原创 2009-11-06 16:18:05 · 1285 阅读 · 0 评论 -
C#中DatagridView单元格动态绑定控件
我们在使用DatagridView的列样式的时候很方便,可以设置成comboboxcolumn,textboxcolumn等等样式,使用起来非常方便,但是,这样设置的列都采用同一种样式.对同一列采用多种样式的,就需要单独对单元格进行操作了.具体方法如下:1.实例化一个定义好的控件:如combobox2.初始化combobox控件3.获取 priv...原创 2009-04-27 17:14:37 · 356 阅读 · 0 评论 -
c#软件注册
在软件推广的时候,经常先让用户试用一定的次数,如果超过试用的次数,则不允许再试用本软件,这样的程序可以通过将软件的试用次数写入注册表来实现。下面的示例实现了如果用户使用本程序超过30次,则不允许用户使用,并提示用户进行注册。 其设计原理是:首先判断在注册表指定的位置处是否建立了限制软件试用次数的数据项,如果该数据项存在,则使用Registry类的GetValue函数读取“使用次数”,然后用Re...原创 2009-04-27 17:17:53 · 205 阅读 · 0 评论 -
如何为datagridview控件添加combox列
System.Windows.Forms.DataGridViewComboBoxColumn List = new DataGridViewComboBoxColumn(); List.DisplayIndex = 0; List.HeaderText = "类型"; List.DataPropertyName = "类型"; Li...2009-04-27 17:49:55 · 595 阅读 · 0 评论 -
C#中ToString格式大全
C货币2.5.ToString("C")¥2.50D十进制数25.ToString("D5")00025E科学型25000.ToString("E")2.500000E+005F固定点25.ToString("F2")25.00G常规2.5.ToString("G")2.5N数字2500000.ToString...原创 2009-04-27 17:57:54 · 72 阅读 · 0 评论 -
一个用C#过滤HTML代码的函数
[code="c#"]public string checkStr(string html) { System.Text.RegularExpressions.Regex regex1 = new System.Text.RegularExpressions.Regex(@"原创 2009-05-04 12:28:03 · 115 阅读 · 0 评论 -
Visual C# 资源文件编程--使用资源文件
本文将接着上篇文章的话题来探讨资源文件另外一个问题,在Visual C#如何使用资源文件。在上一篇文章中,我们已经成功的创建了一个名称为"My.resources"的资源文件。这个资源文件中包含有一个图标资源,在文件中的名称为"demo.ico",若干个图片资源和一个字符串资源,在文件中的名称为"MyStr"。我们将以上一篇文章创建的此资源文件为对象,结合一个具体的程序例子来看一下用Visual ...原创 2009-05-04 15:05:03 · 209 阅读 · 0 评论 -
Visual C# 资源文件编程--创建资源文件
资源文件顾名思义就是存放资源的文件。资源文件在程序设计中有着自身独特的优势,他独立于源程序,这样资源文件就可以被多个程序使用。同时在程序设计的时候,有时出于安全或者其他方面因素的考虑,把重要东西存放在资源文件中,也可以达到保密、安全的效果。那么Visual C#所使用的资源文件中到底存放哪些东西呢?在用Visual C#创建资源文件大致可以存放三种类型的数据资源,分别是字节数组、各种对象和字符串。...原创 2009-05-04 15:07:28 · 89 阅读 · 0 评论 -
使用C#的WebService实现客户端软件升级
由于项目原因,要实施的客户离作者太远,考虑提供软件的在线升级功能.我们如何实现呢!先讲下思路.思路:先实现WEB端的开发,主要考虑使用WEBService技术,提供远程服务的调用函数,返回一个文件的字节内容,然后写一个升级程序客户端,分发给客户使用的机器中,(可以随客户的软件一起安装).该客户端程序主要连接webserivce,然后将文件保存到本地机(客户的机器)中.就可以实现!...原创 2009-05-04 15:35:15 · 147 阅读 · 0 评论 -
用C# 实现CS模式下软件自动在线升级
本文针对目前C/S模式下编写的应用程序可维护性差的特点,提出了一套自动在线升级的解决方案,分析了在线升级的困难及实现原理,并给出了实现升级的部分代码,具有实际参考价值和现实意义。本文程序代码均在.Net Framework 1.1 和Windows2000下测试通过。1 前言 长期以来,广大程序员为到底是使用Client/Server,还是使用Browser/Server结构争论不...原创 2009-05-04 15:36:39 · 126 阅读 · 0 评论 -
如何让应用程序只有一个实例运行
可以使用互斥体Mutex类型完成此功能。见如下代码:[code="c#"][STAThread] public static void Main(string[] args) { //声明互斥体。 Mutex mutex = new Mutex(false, "ThisShouldOnlyRunOnce"); ...2009-05-05 17:21:55 · 79 阅读 · 0 评论 -
silverlight wcf
http://www.code-123.com/html/20087151126411555188.htmlsilverlight wcf2009-05-08 12:36:47 · 88 阅读 · 0 评论 -
C# 中的委托和事件
C# 中的委托和事件引言委托 和 事件在 .NetFramework中的应用非常广泛,然而,较好地理解委托和事件对很多接触C#时间不长的人来说并不容易。它们就像是一道槛儿,过了这个槛的人,觉得真是太容易了,而没有过去的人每次见到委托和事件就觉得心里别(biè)得慌,混身不自在。本文中,我将通过两个范例由浅入深地讲述什么是委托、为什么要使用委托、事件的由来、.Net Fram...原创 2009-11-10 10:47:51 · 69 阅读 · 0 评论 -
WCF
制作中……111 page2009-05-11 17:53:33 · 67 阅读 · 0 评论 -
POP3与SMTP协议
简单的说:pop3协议是收邮件协议,smtp协议是发邮件协议。POP3(Post Office Protocol 3)即邮局协议的第3个版本,它规定怎样将个人计算机连接到Internet的邮件服务器和下载电子邮件的电子协议。它是因特网电子邮件的第一个离线协议标准,POP3允许用户从服务器上把邮件存储到本地主机(即自己的计算机)上,同时删除保存在邮件服务器上的邮件,而POP3服务器则是遵循POP...原创 2009-11-19 11:21:02 · 2580 阅读 · 0 评论 -
C#中使用Monitor类、Lock和Mutex类来同步多线程的执行
在多线程中,为了使数据保持一致性必须要对数据或是访问数据的函数加锁,在数据库中这是很常见的,但是在程序中由于大部分都是单线程的程序,所以没有加锁的必要,但是在多线程中,为了保持数据的同步,一定要加锁,好在Framework中已经为我们提供了三个加锁的机制,分别是Monitor类、Lock关键字和Mutex类。 其中Lock关键词用法比较简单,Monitor类和Lock的用法差不多...原创 2009-05-22 11:04:22 · 67 阅读 · 0 评论 -
用LINQ遍历目录
今天看了一天的LINQ,给自己布置一个问题:用LINQ遍历一个指定目录并输出为XML 写出的代码如下: public static XElement ToXml(this DirectoryInfo dir) { XElement root = new XElement("Dir", new XAttribute("Name", dir.Name), from subDir...原创 2009-11-26 12:36:35 · 102 阅读 · 0 评论 -
.NET中的XML注释(一) -- XML注释标签讲解
一.摘要 .Net允许开发人员在源代码中插入XML注释,这在多人协作开发的时候显得特别有用。 C#解析器可以把代码文件中的这些XML标记提取出来,并作进一步的处理为外部文档。 这篇文章将展示如何使用这些XML注释。 在项目开发中,很多人并不乐意写繁杂的文档。但是,开发组长希望代码注释尽可能详细;项目规划人员希望代码设计文档尽可能详尽;测试、检查人员希望功能说明书尽可能详细等等。如果这些文...原创 2009-11-26 12:49:23 · 298 阅读 · 0 评论 -
c#正则表达式入门
本文以示例的形式进行分布讲解: string Pattern = @"\bn"; (1)\b表示以什么字母开头的字符串,\bn表示以n开头的字符 (2)如果不加@,则会理解为退格+n的字符串。 同样的道理 string Pattern = @"ion\b"; 表示以ion结尾的字符。 string Pattern = @"\ba\S*ion\b"; (1)表示以a开...原创 2009-05-31 12:26:29 · 197 阅读 · 0 评论 -
在VS2008用ANKHSVN插件的进行代码管理的使用方法
具体使用方法请参见附件!2009-11-30 10:08:40 · 138 阅读 · 0 评论 -
C#的多线程机制探索一
一.多线程的概念 Windows是一个多任务的系统,如果你使用的是windows 2000及其以上版本,你可以通过任务管理器查看当前系统运行的程序和进程。什么是进程呢?当一个程序开始运行时,它就是一个进程,进程所指包括运行中的程序和程序所使用到的内存和系统资源。而一个进程又是由多个线程所组成的,线程是程序中的一个执行流,每个线程都有自己的专有寄存器(栈指针、程序计数器等),但代码区是共享的,即...原创 2009-12-03 11:38:14 · 56 阅读 · 0 评论