system

用 c# 创建Windows Service

≡放荡痞女 提交于 2020-03-23 11:20:59
转自 http://tech.ddvip.com/2008-09/122086612561861.html 现在的。NET框架已经为 service的开发提供足够强大的支持,你只需要关注service所要实现的逻辑,而完全不用关心service底层是如何实现的,相比以前用MFC来说,真是质的飞跃啊。闲话少谈,看看如何实现一个最基本的windows service,以及如何来调试windows service.   打开VS 2005,点击File->New->Project…。,在创建工程向导中选择 service模板,如下图所示:      在工程名输入框中,输入TestService然后点击OK.VS为我们生成了最基本的代码,我们将Service的名称改为我们期望的名称,在solution explorer中右键点击vs自动生成的service文件“Service1.cs”,在弹出的菜单中选择Rename,输入“MyFirstService”,然后切换到设计视图,也就是在solution explorer中双击MyfirstService.cs,在Property Explorer中将ServiceName属性改为MyFirstService,这时一个可运行的windows service已经创建成功。我们添加一些代码来测试一下这个service

WPF-命令

孤人 提交于 2020-03-23 09:20:35
一、WPF为何需要命令 我们已经知道WPF里已经有了路由事件,可以发布及传播一些消息,那为什么还需要命令呢?这是因为事件指负责发送消息,对消息如何处理则不管,而 命令是有约束力,每个接收者对命令执行统一的行为,比如菜单上的保存,工具栏上的保存都必须是执行同样的保存。 二、命令系统的基本元素 命令(Command):实现了ICommand接口的类,经常使用的有RoutedCommand类 命令源: 是命令的发送者,是实现了ICommandSource接口的类,大部分界面的控件都实现了这个接口,Button, MenuItem 等等。 命令目标:命令的接收者,命令目标是视线了IInputElement接口的类。 命令关联:负责一些逻辑与命令关联起来,比如判断命令是否可以执行,以及执行完毕后做一些处理。 三、四个命令元素之间的关系 四、命令示例 我们让一个按钮发送Hello命令给文本框,文本框接收这个命令后显示“Nice to meet you”. view source print ? 01 < Window x:Class = "DeepXAML.MainWindow" 02 xmlns = " http://schemas.microsoft.com/winfx/2006/xaml/presentation " 03 xmlns:x = " http://schemas

linux系统监控shell脚本

白昼怎懂夜的黑 提交于 2020-03-23 09:14:17
代码如下,实现了Linux系统的一些常见的监控变量,分享给大家@.·.@ #=============================# #Filename=system_monitor.sh #Author:foxsir #Date:2016-02-15 #=============================# #!/bin/sh clear if [[ $# -eq 0 ]] then #Define Variable Reset_terminal Reset_terminal=$(tput sgr0) #Check OS Type OS=$(uname -o) echo -e '\E[36m' "Operating System Type :" $Reset_terminal $OS #Check OS Realease Version And Name OS_name=$(cat /etc/issue | grep "Server") echo -e '\E[36m' "Operating System Realease Version :" $Reset_terminal $OS_name #Check Architecture Architecture=$(uname -m) echo -e '\E[36m' "Operating System

Junit单元测试多线程的问题

旧城冷巷雨未停 提交于 2020-03-23 05:33:02
今天下午很快完成了一个接口的监控功能,然后屁颠屁颠地用Junit开始单元测试。然后我就开始陷入崩溃的边缘... 监控结束后需要将监控结果以邮件的形式发送给运营的小伙伴维护,前面测试还是很顺利,到了开多线程发邮件时就不行了, 程序也不报错,也接收不到邮件。然后改代码再测试,再冥思一会儿,再改再测试,还是无果,最后选择度娘一下,结论是: Junit单元测试不支持多线程 然后 ,整个人都不好了...浪费了我好多时间,就是因为这个!!! 虽然知道了结果,但是笔者还是需要亲自验证一下。 /** * @Title: TestDoWork.java * @Describe: * @author: Mr.Yanphet * @Email: mr_yanphet@163.com * @date: 2016年8月15日 下午5:50:03 * @version: 1.0 */ public class TestDoWork { class DoWork implements Runnable { @Override public void run() { for (int i = 0; i < 10000; i++) { long milliSecond = System.currentTimeMillis(); System.out.println("i=" + i + ",milliSecond=

Java连载101-DataOutputStream、PrintStream方法详解

天涯浪子 提交于 2020-03-23 01:57:24
一、java.io.DataOutputStream;数据字节输出流 1.可以将内存中的“int i = 2;"写入到硬盘文件里面,写进去的不是字符串,写进去的是二进制数据,可以带有类型。 package com.bjpowernode.java_learning; import java.io.*; ​ public class D101_1_DataOutputStream { public static void main(String[] args) throws IOException{ //创建数据字节输出流 String address = "C:\\\\Users\\\\lenovo1\\\\Workspaces\\\\MyEclipse CI\\\\Java_learning\\\\src\\\\com\\\\bjpowernode\\\\java_learning\\\\temp1.txt"; DataOutputStream dos = new DataOutputStream(new FileOutputStream(address)); //准备数据 byte b = 10; short s = 11; int i = 12; long l = 13; float f = 3.2f; double d = 2.3; boolean flag = false

常用API

丶灬走出姿态 提交于 2020-03-22 18:29:40
1.什么是API? API(Application Programming Interface)应用程序编程接口,JavaAPI是一本程序员的字典,是jdk中提供给我们使用的类的说明文档。这些类将底层的代码实现封装了起来,我们不需要关心这些类是如何实现的,只需要学习如何使用这些类即可。 【使用步骤】 1.打开帮助文档; 2.点击显示,找到索引,看到输入框; 3.输入要寻找的; 4.看包,Java.long下的类不需要导包,其他需要; 5.看类的解释和说明; 6.学习构造方法; 7.使用成员方法。 2.Scanner类 Scanner是一个可以解析基本类型和字符串的简单文本扫描器。可以实现键盘输入数据到程序中。 1.导包: import 包路径.类名称 【注意】   1.如果需要使用的目标类,和当前类位于同一个包下,则可以省略导包语句不写;   2.只有java.long包下的内容不需要导包,其他的包都需要import语句。 2.创建: 类名称 对象名 = new 类名称() 3.使用: 对象名.成员方法名() scanner的使用 import java.util.Scanner; public class Demo01Scanner { public static void main(String[] args) { Scanner sc = new Scanner(System

第三周作业

大憨熊 提交于 2020-03-22 18:27:14
package kljjjjj; public class kljjjjj { public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("输入年份"); int year=2020; if ( ( 2020 % 4==0 && 2020 % 100!=0)||(2020%400!=0)) { System.out.println("闰年"); } else { System.out.println("不是闰年"); } } package kljjjjjj; import java.util.*; public class kljjjjjj { public static void main(String[] args) { // TODO Auto-generated method stub Scanner input=new Scanner(System.in); int x=input.nextInt(); int y; if(x>0) y=x+3; else if(x < 0) y=0; System.out.println("y"); } package kljjjjjjj; import java.util.Scanner; public

重温一下基本数据类型以及自动提升数据类型的问题

╄→гoц情女王★ 提交于 2020-03-22 16:35:37
上面的图表示出了数据类型的分类, 加上布尔型(bealoon)分为四类八种数据类型, 构成了java的基本数据类型, 这几种数据的之间的联系也是想图中的箭头一样, 数据之间有一个自动提升数据类型的机制, 在java编程中需要随时注意. 下面看一组简单的代码实例: byte a = 127; short b = 45; char e = 'a'; float f = 21.23f; double g = 0.456; String str = "xuesheng"; String x = str+e+a; String z = e+a+str; /*对于第一个表达式xuesheng+'a'+127,先进行"xuesheng" + 'a'的运算,将把'a'转换成字符串, 将拼接成字符串xueshenga,接着进行"xueshenga" + 127的运算,这也是     一个字符串连接运算, 得到结果是xueshenga127。对于第二个表达式,先进行'a' + 127加法运算, 其中'a'自动提升到int型,变成a对应的ASCII值:97,从97 + 127将得到224     , 然后进行224 + "xuesheng",224会自动转换成字符串,将变成两个字符串的连接运算, 从而得到224xuesheng。*/ System.out.println("xuesheng+'a'

作业(第三周)

帅比萌擦擦* 提交于 2020-03-22 13:02:32
package sss; import java.util.Scanner; public class zy { public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("请输入年份"); Scanner s = new Scanner(System.in); int year = s.nextInt(); if (year<0) { System.out.println("年份输入错误,请检查"); return; } if ((year % 4 ==0 && year % 100 !=0)||year % 400 ==0) { System.out.println(year + "是闰年"); } else { System.out.println(year + "不是闰年"); } } } package sss; import java.util.Scanner; public class zy { public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("请输入四位会员卡号"); Scanner s =

asp.net批量生成静态网页

眉间皱痕 提交于 2020-03-22 08:50:38
做了那么久的动态网页,特别是类似于文章或者是新闻系统,都是按照很传统的方法来做的。但是看到越来越多的网站都使用生成静态网页的方法,于是我也打算使用这个方法实践一下。 希望对一些有这方面的需要的朋友提供点帮助。 本人使用 IIS6.0+asp.net 2.0 制作,并测试成功。 实现效果图: 生成文章以后的页面: 我在输入框里输入了生成 ID 号从 1 到 10 的文章,通过查询数据库得出结果并批量生成静态页面,然后返回根据刚才生成的页面的内容生成了主页 index.html。 点击第三个文章,然后进入到查看文章详细内容的页面: 这是我用的是我们公司的网页做模板生成的式样(本文示例并不是这样的,要更好看的样式,请自行设计模板。) 以下是我的实践过程: 首先制作要生成 HTML 页面的模板: <!-- temp.htm --> <html> <head> <title> $htmlformat[0]</title> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <!-- 式样表自己制作 --> </head> <body> <table> <tr><!-- 文章导航 --> <td algin=right> $htmlformat[4]</td> </tr> <tr><!-- 文章的标题 -