自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

上善若水 的专栏

山一程,水一程,身向榆关那畔行,夜深千帐灯。 风一更,雪一更,聒碎乡心梦不成,故园无此声

  • 博客(23)
  • 资源 (17)
  • 收藏
  • 关注

原创 C#中调用Windows API时的数据类型对应关系

<br />最近接触WINAPI比较多,一直要楂数据类型间的对应关系,所姒就转载一下~<br /><br /><br /><br /># Windows Data Type .NET Data Type <br /><br /># BOOL, BOOLEAN Boolean or Int32 <br /><br /># BSTR String <br /><br /># BYTE Byte <br /><br /># CHAR Char <br /><br /># DOUBLE Double <br /><

2010-06-28 17:32:00 1529 1

转载 VC实现进程遍历的四种方法

<br />方法一 <br />第一种方法是大家比较熟悉的通过ToolHelp Service提供的API函数来实现。这里用到了3个关键的函数:CreateToolhelp32Snapshot(),Process32First()和Process32Next()。下面给出了关于这三个函数的原形和参数说明; <br />HANDLE WINAPI CreateToolhelp32Snapshot( <br />  DWORD dwFlags, //系统快照要查看的信息类型 <br />  DWORD th32

2010-06-28 14:30:00 1350 1

原创 Visual C#中操作WMI的类库简介

.Net FrameWork SDK对WMI提供了全面的支持,.Net FrameWork SDK为Visual C#能够操作WMI提供了一个专门的命名空间"System.Management"。在命名空间"System.Management"中提供了大量用以处理和WMI相关的类、接口和枚举。  命名空间"System.Management"中的成员是非常复杂的,由于篇幅所限完全介绍这些成员是不可能的,也是没有要的。根据我的经验,认为要了解、掌握在Visual C#中使用WMI,下面六个类应该是学习的重点,

2010-06-28 11:32:00 6146 1

原创 为服务的可执行程序加上参数

<br />在Windows 的系统服务中,有很多的服务都是使用相同的程序集的,不同的是他们使用不同的参数启动。<br />而在我们的需求中,也可能有这样的应用场景,<br />双击我们的程序时,直接打开一个窗体应用程序,而同时,这个窗体应用程序中也包含了某些服务的代码,因此我们也想把该程序注册成为服务。<br /> <br />由此,我们为程序添加了一个参数 -service,当程序以 -service的参数启动时,调用服务的代码,当没有参数启动时,我们启动一个窗体。<br /> <br /> <br /

2010-06-28 11:22:00 4028

原创 使用WTSGetActiveConsoleSessionId()的VISTA服务与桌面交互

Windows Vista 对快速用户切换,用户账户权限,以及服务程序所运行的会话空间都作了很大的改动,致使一些原本可以工作的程序不再能够正常工作了,我们不得不进行一些改进以跟上 Vista 的步伐。我们的软件在Windows NT/2000/XP/Vista 系统中安装了一个系统服务,这个服务负责以 SYSTEM 权限启动我们的主程序。我们的主程序启动后会在系统托盘添加一个图标,点击此图标可以弹出控制菜单,通过这个菜单也可以激活配置程序首选项的对话框。在 Windows NT/2000/XP 下我们的程序

2010-06-27 22:52:00 3540 1

原创 CreateProcess函数详解

<br />CreateProcess<br />说明:<br />WIN32API函数CreateProcess用来创建一个新的进程和它的主线程,这个新进程运行指定的可执行文件。<br />函数原型:<br />BOOL CreateProcess<br />(<br />    LPCTSTR lpApplicationName,        <br />    LPTSTR lpCommandLine,        <br />    LPSECURITY_ATTRIBUTES lpProcess

2010-06-27 22:51:00 1366

原创 在服务里面弹出一个窗口到用户的桌面上

<br />曾几何时,服务里面弹出一个窗口到桌面上不再是那么地容易了:以前只要把服务设置为允许和桌面交互就可以直接在服务启动的时候,把一个窗口弹给用户。但是现在在vista(其它的OS 下没有测试,未知)下要弹出这样的窗体,首先会弹出一个提示框提示是否接否一个服务弹出来的消息,点接受后,才会在一个全灰的桌面里面弹出这个窗口。不用想,这样的用户体验,肯定是会被直接PASS。原因很简单,因为不同的用户间的桌面是不一样的,服务用的是System的权限,在vista里面是Session0,而用户的帐户不是这个(肯定

2010-06-27 22:45:00 3553

原创 .NET实现可交互的WINDOWS服务

<br />Windows 服务应用程序在不同于登录用户的交互区域的窗口区域中运行。窗口区域是包含剪贴板、一组全局原子和一组桌面对象的安全对象。由于 Windows 服务的区域不是交互区域,因此 Windows 服务应用程序中引发的对话框将是不可见的,并且可能导致程序停止响应。同样,错误信息应记录在 Windows 事件日志中,而不是在用户界面中引发。<br />  .NET Framework 支持的 Windows 服务类不支持与交互区域(即登录用户)进行交互。同时,.NET Framework 不包含

2010-06-27 20:13:00 2915

转载 Virtual Desktop: A Simple Desktop Management Tool

<br />Virtual Desktop: A Simple Desktop Management Tool 时间: 2009.01.08 20:07:00 标签:   Download demo project - 260.89 KBDownload source - 44.5 KB Introduction<br />A few months ago, one of my colleagues was using a tool that was managing multiple desktops.

2010-06-26 11:32:00 1003

原创 DeskTop与WorkStation使用两则

<br />  经历过Windows 95以及之前版本的用户,都对Windows98之后的Windows可以支持多个显卡惊讶不已,其实从Windows98开始,Windows系统也可以支持多个桌面了,新的API提供了一组使用Desktop桌面和Workstaion工作站的函数:CloseDesktopCloseWindowStationCreateDesktopCreateWindowStationEnumDesktopProcEnumDesktopsEnumDesktopW

2010-06-25 17:54:00 4027

原创 窗口站(Window station)和桌面(desktop)

<br />窗口站(window station):<br />包含剪贴板(clipboard),一个原子表,一个或多个桌面(desktop)对象.窗口站是一个保护对象,当一个窗口站被创建,它被分配到当前进程和当前会话(session).<br />交互式窗口站Winsta0是唯一的可以显示用户接口和接受用户输入的窗口站,它被分配到当前用户的登录会话,并且包含键盘,鼠标和显示器,其他窗口站都不能显示用户接口和接受用户输入.<br />当一个用户登录到一个终端服务(Terminal Service)计算机,一

2010-06-25 17:51:00 4188 2

原创 在服务程序中弹出对话框

先说说在WinXP和Windows2003下用的方法。 第一种方法是在服务进程中启动一个子进程。用该子进程弹出对话框。.NET的C#代码大致如下: public static void Show( string msg, string cap, MessageBoxButtons buttons, MessageBoxIcon icon ){ try { Process proc = new Process(); proc.StartInfo.FileName = EXE_NAM

2010-06-25 17:35:00 2450 1

转载 关于C#服务里面的OnSessionChange

此文档假设你已会C和C#的服务编程了。以前我在写服务程序的时候,SCM有一个很酷的功能,能接收WinLogon的Notify消息。具体操作是,设置服务状态的时候,把SERVICE_STATUS结构体变量的dwControlsAccepted参数设成包含SERVICE_ACCEPT_SESSIONCHANGE的异或(代码一),然后就能在HandleEx函数里处理了(代码2)。你可以方便地获得系统的Logon、LogOff、Lock、Unlock的消息,并在此时机做出自己的处理。例如开始菜单里面“启动”项里的程

2010-06-25 16:54:00 3115

原创 ServiceController类

<br /> <br />下面创建一个小的Windows应用程序,该应用程序使用ServiceController类监视和控制Windows服务。<br />创建一个Windows窗体应用程序,这个应用程序的用户界面包含一个显示所有服务的列表框、4个文本框(分别用于显示服务的显示名称、状态、类型和名称),以及4个发送控制事件的按钮,如图32-18所示。<br /><br />图  32-18<br />这里使用了System.ServiceProcess.ServiceController类,因此必须引

2010-06-25 15:02:00 2970

原创 开机自动启动程序

开机自动启动程序2008年09月14日 星期日 23:24<br />一、经典的启动——“启动”文件夹<br />  单击“开始→程序”,你会发现一个“启动”菜单,这就是最经典的Windows启动位置,右击“启动”菜单选择“打开”即可将其打开,如所示,其中的程序和快捷方式都会在系统启动时自动运行。最常见的启动位置如下:<br />  当前用户:</documentsandsettings/用户名/「开始」菜单/程序/启动><br />  所有用户:</documentsandsettings/alluser

2010-06-24 16:13:00 1043

原创 如何用C#动态编译、执行代码

在开始之前,先熟悉几个类及部分属性、方法:CSharpCodeProvider、ICodeCompiler、CompilerParameters、CompilerResults、Assembly。一、CSharpCodeProvider    提供对C#代码生成器和代码编译器的实例的访问。如果要动态生成VB代码,可以使用VBCodeProvider。CreateCompiler():获取编译器的实例。二、ICodeCompiler    定义用于调用源代码编译的接口或使用指定编译器的CodeDOM树。每种编

2010-06-24 01:09:00 5262 1

原创 关于Lambda表达式

<br />  Lambda表达式是C#3.0的一种新语法,语法简洁<br />  为编写匿名方法提供了更简明的函数式的句法.<br />  我通过一个示例来说明Lambda表达式的原理:<br />  Lambda表达式和匿名方法都来源于委托<br />  我们来看看委托的使用<br />  在C#1.0时:<br /> 1using System;<br /> 2using System.Collections.Generic;<br /> 3using System.Linq;<br /> 4usin

2010-06-22 23:54:00 906

原创 C#教程:作为委托的Lambda表达式

作为委托的Lambda表达式从很多方面看, Lambda表达式可以被看成是C# 2中匿名方法的进化. 几乎没有什么匿名方法能做而Lambda表达式不能做的事情, 而Lambda表达式几乎总是能提供更好的可读性且更简洁. 特别的, lambda表达式和匿名方法捕获变量的行为是完全一致的. 在两者多数的显式行为当中并没有存在太多的不同——不过lambda表达式拥有大量的快捷方式, 这在很多常规情况下使得代码更加简洁. 与匿名方法一样, lambda表达式也拥有自己特殊的转换规则——表达式本身的类似并不是

2010-06-22 23:41:00 980

原创 ThickBox 使用小记

<br />应用场景:<br />登陆按钮被点击之后,显示模态框,提示,正在处理(因为通过远程单点认证,因此需要时间较长,所以才用了模态框),一般情况下是正常的,<br /> <br />但此时的登陆框有个选项,可以选择两种不同的登陆方式,并且在两种不登陆方式切换时,页面会回传刷新(登陆框是一个控件),当页面被刷新时,输入数据后,却无法再显示模态框(ThickBox控件),<br /> <br />在经过一天的摸索后发现,是因为在回传之后,原本在控件页面里的JS引用脚本,和样式文件全都不见了,因而导致了无法

2010-06-13 01:12:00 704

原创 ThickBox使用心得

<br />到http://jquery.com/demo/thickbox/下载需要的js及css文件<br />分别保存到目录<br />--js<br />--css<br />--images<br />中,<br />一、在文件的<head></head>中插入<br /><script type="text/javascript" src="js/jquery.js"></script><br /><script type="text/javascript" src="js/thickbox.j

2010-06-10 10:14:00 1009

原创 本地调试WCF程序出现错误:AddressAccessDeniedException: HTTP could not register URL

<br />原因,没权限<br /> <br />这个问题是因为在Vista,server 2008,Win7等操作系统中,http地址是归一个叫做http.sys的核心驱动管理的。当你想http.sys发出请求时,是需要注册这个http命名空间的,这是一个需要特权(管理员权限)的操作。 <br /><br />所以当你使用管理员登陆时,这个异常一般不会发生,当你使用其他用户(哪怕只是管理员组成员)时,就需要“以管理员身份”打开命令提示符窗口,并输入: <br /><br />netsh http add

2010-06-04 08:38:00 3287 1

原创 CSC 命令详解

<br />C#环境变量设置步骤(这样之后打开CMD就可以直接输入CSC命令): 在桌面右击[我的电脑]->[属性]->[高级]->[环境变量] 在下面的系统变量栏点击“新建” 变量名输入“csc” 变量值输入:“C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/”(也许你的机器上.net framework的版本会有所不同,因而后面的文件夹名称v2.0.50727会有不同) 然后在系统变量列表框中双击“Path” 在变量名文本框的最后面加入“;%csc%;”(注意

2010-06-02 16:57:00 8807

原创 WCF 设置超时时间

<br />如果某个方法用时太长,可以在配制里面的<br /> <binding name="Service1Soap" closeTimeout="00:01:00" openTimeout="00:00:05"<br />     receiveTimeout="00:01:01" sendTimeout="00:00:09" allowCookies="false"<br />     bypassProxyOnLocal="false" hostNameComparisonMode="StrongW

2010-06-02 16:53:00 13461

unetlab-topology-export.zip

CCNA,CCNP,CCIE学习过程中各种实验拓扑配置包

2024-03-21

.NET 开发服务用定时器组件

提供任务多样化的定时功能. 详细说明.参见: http://blog.csdn.net/linux7985/article/details/9301163

2013-08-02

全国最全的行政区县数据 34个省

省市区县数据来源Google地图. (包括34个省 , 371个市, 2824个县区)

2011-02-23

服务与桌面交互程序(Window2k\xp\03\VISTA\Win7\2008的系统都可以用)

还在为Win7的系统不能弹出应用程序而苦恼,请下载这个代码吧,10分,物超所值。 最重要的文件就是 Interop.cs 文件 两个可直接调用的方法 1. ShowMessageBox 向用户桌面显示一个对话框 2. CreateProcess 在用户的桌面开启一个进程, 由于普遍反应本人太黑,因此降点资源分。如果实在没分可以直接找偶要代码,

2010-07-02

SqlServer自定义多参数聚合函数实例代码

一个多参数的自定义聚合函数实现方案 ,一个多参数的自定义聚合函数实现方案

2010-04-15

C#发起HTTP及Https请求.docx

C#实现模拟登陆之类的功能,可以发起HTTPS,以及HTTP的请求

2010-03-22

CMPP互联网短信网关接口协议(V3.0.0)

本规范规定了移动梦网短信业务开展过程中各网元(包括ISMG、GNS和SP)之间的消息类型和定义,目前为3.0.0版本,是在原来2.1.0版本的基础上进行修订而成。根据业务的发展,规范中的信令操作和参数将会做进一步的调整和增加。 本标准由中国移动通信集团公司技术部提出并归口。

2010-03-04

XML+路径语言(XPath)+版本+1.0

XML+路径语言(XPath)+版本+1.0

2010-03-03

CMPP互联网短信网关接口协议(V3.0.0)

CMPP互联网短信网关接口协议(V3.0.0)

2010-03-03

RTF V 1.7 规范

一个RTF文件符合如下语法: <File> '{' <header> <document> '}' 这是标准的RTF语法;任何RTF阅读器应该可以正确的解释按该语法书写的RTF。有必要重申的是:RTF阅读器没有必要包含所有的控制字,但它必须能够无害的忽略它不知道(或者未使用)的控制字,并且必须能正确的略过被\*控制符标记的部分。然而,RTF书写器有可能并没完全符合这个语法规范,同样地,RTF阅读器应该有足够能力去处理一些细微变化的控制字。虽然如此,如果一个RTF书写器符合本规范,那么任何一个正确的RTF阅读器都应该能够完美的解释它。

2010-03-03

RSS从入门 到 精通

最近在浏览许多新闻网站时,用户都会惊奇的发现一些写有“XML”字样的桔黄色图标频繁出现。如果使用普通浏览器的用户点击后只能看到一个写满了天书的页面。这是一种最近十分流行的网络技术,被称为RSS(Really Simple Syndication)。通过专用的RSS阅读工具,用户能够快速浏览大量的网页内容,如新闻或者网络日志。最初RSS主要是应用在民间的网络日志之中。但由于其易用性迅速受到了欢迎。如今Businessweek、Forbes和New York Times等著名传统媒体的网站中,也都添加了RSS功能。

2010-03-03

Windows常用消息大全

WM_NULL 0x0000 空消息,此消息将被接收窗口忽略 WM_CREATE 0x0001 应用程序创建一个窗口 WM_DESTROY 0x0002 一个窗口被销毁 WM_MOVE 0x0003 移动一个窗口 WM_SIZE 0x0005 改变一个窗口的大小 WM_ACTIVATE 0x0006 一个窗口被激活或失去激活状态 WM_SETFOCUS 0x0007 获得焦点后

2009-12-01

跟我一起写makefile

在C/C++开发时,编译项目时需要用到的东西

2009-12-01

C#键盘勾子实例以及源代码

键盘勾子实例代码 C#键盘勾子实例以及源代码

2008-12-31

自定义ListView控件(修正版 绑定 各种Contorl 子类的控件)

ListView 单元格绑定下拉列表控件,文本框控件 可以绑定文本框,下拉列表框,图像,进度条,复选框,单选择,只要是继承Control类的控件都可以绑定 控件截图 http://blog.csdn.net/Linux7985/archive/2008/12/20/3562745.aspx

2008-12-22

自定义ListView控件(删除中,这个是非完整,不要下载这个)

ListView 单元格绑定下拉列表控件,文本框控件

2008-12-20

Net Remoting 入门与提高

一、Remoting基础 二、远程对象的定义 三、服务器端 四、客户端 Marshal、Disconnect与生命周期以及跟踪服务

2008-12-01

c#资源文件使用方法

目录 制作使用资源文件(转) 1 资源文件的使用方法 5 Visual C#资源文件编程--创建资源文件 15 Visual C#资源文件编程--使用资源文件 18 软件保护中常见自校检分析实例 22 C#版最简单的屏蔽任务管理器的方法 26 C#资源文件的使用方法 27 从内存中直接运行PE程序 37

2008-11-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除