//public void Run()
//{
// //httpListener提供一个简单,可通过编程方式控制的Http协议侦听器。此类不能被继承。
// if (!HttpListener.IsSupported)
// {
// //该类只能在Windows xp sp2或者Windows server 200 以上的操作系统中才能使用,因为这个类必须使用Http.sys系统组件才能完成工作
// //。所以在使用前应该先判断一下是否支持该类
// this.listShow.Items.Add("Windows xp sp2 or server 2003 is required to use the HttpListener class");
// }
// //设置前缀,必须以‘/’结尾
// string[] prefixes = new string[] {
// "http://localhost:8888/server/",
// "http://127.0.0.1:8888/server/",
// "http://"+NetWorkHelp.GetIntranetIP()+":8888/server/"
// //,"http://"+NetWorkHelp.GetPublicNetworkIP()+":8888/server/"
// };
// //初始化监听器
// HttpListener listener = new HttpListener();
// //将前缀添加到监听器
// foreach (var item in prefixes)
// {
// listener.Prefixes.Add(item);
// }
// //判断是否已经启动了监听器,如果没有则开启
// if (!listener.IsListening)
// {
// listener.Start();
// }
// //提示
// this.listShow.Items.Add("服务已经启动,监听 http://localhost:8888/server " + DateTime.Now.ToLocalTime());
// while (true)
// {
// //等待传入的请求,该方法将阻塞进程,直到收到请求
// HttpListenerContext context = listener.GetContext();
// //取得请求的对象
// HttpListenerRequest request = context.Request;
// //根据请求分配处理方法
// if (request.QueryString["flag"] == "kt")
// {
// //添加请求回显信息
// this.listShow.Items.Add("收到开台请求\t" + DateTime.Now.ToLocalTime());
// btnKT_Click(null, null);
// }
// if (request.QueryString["flag"] == "dc")
// {
// //添加请求回显信息
// this.listShow.Items.Add("收到点菜请求\t" + DateTime.Now.ToLocalTime());
// btnDC_Click(null, null);
// }
// if (request.QueryString["flag"] == "cash")
// {
// //添加请求回显信息
// this.listShow.Items.Add("收到收银请求\t" + DateTime.Now.ToLocalTime());
// btnCash_Click(null, null);
// }
// //取得响应对象
// HttpListenerResponse response = context.Response;
// //构造响应内容
// //准备发送到客户端的网页
// var json = new ResponseMsg()
// {
// datetime = DateTime.Now.ToLocalTime(),
// success = true
// };
// IsoDateTimeConverter timeFormat = new IsoDateTimeConverter();
// timeFormat.DateTimeFormat = "yyyy-MM-dd HH:mm:ss";
// string responseBody = JsonConvert.SerializeObject(json, Formatting.Indented, timeFormat);
// //设置响应头部内容,长度及编码
// response.ContentLength64 = System.Text.Encoding.UTF8.GetByteCount(responseBody);
// response.ContentType = "application/json; Charset=UTF-8";
// //输出响应内容
// Stream output = response.OutputStream;
// StreamWriter sw = new System.IO.StreamWriter(output);
// sw.Write(responseBody);
// sw.Dispose();
// }
//}

http.sys的简单应用的更多相关文章

  1. MySQL sys Schema 简单介绍-2

    之前在<MySQL sys Schema 简单介绍-1>中简单的介绍了,sys Schema库中的表.那么这些表都可以查询些什么信息呢?接下来本文将做下介绍. 1. 表的情况 1.1 统计 ...

  2. python sys.argv[]简单解释

    上一篇UDP编程中简单使用了一些sys模块的argv参数,也是我第一次看见这个参数,这里做个记录: sys.argv是一个从程序外部获取参数的桥梁,这个“外部”很关键, 因为我们从外部取得的参数可以是 ...

  3. MySQL sys Schema 简单介绍-1

    参考文档: MySQL- 5.7 sys schema笔记 MySQL 5.7新特性:SYS库详解 MySQL Performance Schema&sys Schema介绍 内存分配统计视图 ...

  4. [Python爬虫]cnblogs博客备份工具(可扩展成并行)

    并发爬虫小练习. 直接粘贴到本地,命名为.py文件即可运行,运行时的参数为你想要爬取的用户.默认是本博客. 输出是以用户名命名的目录,目录内便是博客内容. 仅供学习python的多线程编程方法,后续会 ...

  5. python剑指网络篇一

    #coding:utf-8 __author__ = 'similarface' #!/usr/bin/env python import socket #二进制和ASCII互转及其它进制转换 fro ...

  6. 解压vmlinuz和解压initrd(initramfs)

    有时就算只得到一个Linux kernel的rpm包或者直接是编译后的vmlinuz和initrd的binary文件,也需要了解其中的一些细节,可能需要去查找这些binary有没有将我想要的patch ...

  7. win7(64bit)python相关环境模块搭建

    包括Python,eclipse,jdk,pydev,pip,setuptools,beautifulsoup,pyyaml,nltk,mysqldb的下载安装配置. **************** ...

  8. 简化 Django

    http://www.oschina.net/translate/simplifying-django 尽管Django的流行和普及, 一些开发者仍然认为她是一个过时的web开发框架, 仅仅适合内容丰 ...

  9. python基础(三)编码,深浅copy

    编码,深浅copy encode,decode在python2中使用的一些迷糊,python3中更容易理解 要理解encode和decode,首先我们要明白编码,字符和二进制的相关概念,简单来说,计算 ...

随机推荐

  1. 使用SpringBoot的yml文件配置时踩的一个坑

    问题描述:使用SpringBoot整合redis进行yml配置的时候,启动工程报错,提示加载application.yml配置文件失败: ::27.430 [main] ERROR org.sprin ...

  2. Chrome中使用flash引起cpu飙升问题的处理

    本人使用的是Chrome 30 flash 18,在看视频或者登陆有调用flash插件的页面之后,经常会遇到Shockwave Flash插件CPU占用超过50%的情况(在Chrome的任务管理器可以 ...

  3. Airlaunch 快捷设置代码分享

    Airlaunch 快捷设置代码分享设置:prefs:root=SETTING蜂窝网络:prefs:root=MOBILE_DATA_SETTINGS_IDWIFI:prefs:root=WIFI定位 ...

  4. 2. 知识图谱-命名实体识别(NER)详解

    1. 通俗易懂解释知识图谱(Knowledge Graph) 2. 知识图谱-命名实体识别(NER)详解 3. 哈工大LTP解析 1. 前言 在解了知识图谱的全貌之后,我们现在慢慢的开始深入的学习知识 ...

  5. C语言 · LOG大侠

    标题:LOG大侠 atm参加了速算训练班,经过刻苦修炼,对以2为底的对数算得飞快,人称Log大侠. 一天,Log大侠的好友 drd 有一些整数序列需要变换,Log大侠正好施展法力... 变换的规则是: ...

  6. Free-form语言

    在计算机编程领域,程序指令文本中的字符在『纸面』上所处的位置无关紧要 - 不像老式的穿孔卡片系统(punched card system)程序指令文本需要放置在指定列,这种编程语言就可算是自由形式语言 ...

  7. iframe中跨域页面访问parent的方法

    背景 如上图所示,系统www.a.com/index.html页面中嵌入一个iframe,iframe中访问不同域的www.b.com/index.html 然后b中有个按钮“保存”,想调用父页面a. ...

  8. SpringBoot 中 @RequestBody的正确使用方法

    SpringBoot 中 @RequestBody的正确使用方法 最近在接收一个要离职同事的工作,接手的项目是用SpringBoot搭建的,其中看到了这样的写法: @RequestMapping(&q ...

  9. 切换tab页

    //切换Tab页        $('#tt').tabs({               border:false,               onSelect:function(title){ ...

  10. export Jar from eclipse (总结)

    sourceforge 的源码网址 :https://sourceforge.net/projects/fjep/files/fatjar/ <span style="margin:0 ...