delegate

C#串口通讯实例

那年仲夏 提交于 2020-05-09 16:01:11
本文参考《C#网络通信程序设计》(张晓明 编著) 程序界面如下图: 参数设置界面代码如下: 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; using System.IO.Ports; namespace ComDemo { public partial class ComSet : Form { public ComSet() { InitializeComponent(); } private void ComSet_Load( object sender, EventArgs e) { // 串口 string [] ports = SerialPort.GetPortNames(); foreach ( string port in ports) { cmbPort.Items.Add(port); } cmbPort.SelectedIndex = 0 ; // 波特率 cmbBaudRate.Items.Add( " 110 " );

Time Management时间管理

生来就可爱ヽ(ⅴ<●) 提交于 2020-05-09 14:05:40
Three keys to brilliant time management Plan: Understand the purpose of your task andset yourself meaningful goals. Prioritise: Categorise tasks according to importance and urgency, and organise your time accordingly. Delegate: Know which tasks should be delegated and how to do so withoutlosing control. Seven common time management mistakes 1.Not keeping a To-Do list 2.Procrastination 拖延 3.Not managing distractions 4.Not setting personal goals 5.Thriving喜欢 on "Busy" 忙碌但是低效 6.Taking on承担 too much 7.Not scheduling tasks properly Want to achieve your goals? Read on 来源: oschina 链接: https://my

无法将类型为“System.__ComObject”的 COM 对象强制转换为类类型“mshtml.HTMLInputElementClass

ε祈祈猫儿з 提交于 2020-05-08 19:09:36
环境: VS2008+Win7 64bit 代码: public string Execute(WebBrowser browser, HtmlElement btn) { bool loadFinished = false; int counterTimeOut = 500; string message; try { browser.DocumentCompleted += delegate { loadFinished = true; }; HTMLInputElementClass iElement = (HTMLInputElementClass)btn.DomElement; iElement.click(); while (!loadFinished && counterTimeOut > 0) { Thread.Sleep(100); Application.DoEvents(); counterTimeOut--; } message = string.Format("Button {0} clicked", btn.InnerHtml.ToString()); } catch (Exception ex) { message = ex.ToString(); } return message; } 症状: 执行到 HTMLInputElementClass

200道iOS面试题面试题整理,底层、技术亮点公司需要的这里都有

瘦欲@ 提交于 2020-05-08 17:21:47
100家知名企业今年来iOS面试题合集: 你要的这里都有; 企业要的这里也有; 从基础开始到进阶、深入底层 整理出188个面试题,全是干货 目录展示: 1、swift和oc的区别 2、编译链接 3、synthesize & denamic 4、在项目开发中常用的开发工具有哪些? 5、UITableView & UICollection 6、NSProxy & NSObject 7、Object & Swift 8、传值通知 & 推送通知(本地&远程) 9、第三方库 & 第三方平台 10、NSCache & NSDcitionary 11、 UIView的setNeedsDisplay和setNeedsLayout方法 12、UILayer & UIView 13、layoutSubViews & drawRects 14、UDID & UUID 15、CPU & GPU 16、点(pt)& 像素(px) 17、属性与成员变量 18、int和NSInteger的区别 (1)import和include (2)@class (3)全局 & 静态变量 19、类和对象 (1)分类拓展协议中哪些可以声明属性? (2)继承和类别的区别 (3)分类的作用 (4)分类的局限性 20、category & extension 21、Foundation (1)字符串 (2)字符串截取 (3)格式

【SSL】WebClient 请求 https 页面出错:未能创建 SSL/TLS 安全通道

浪子不回头ぞ 提交于 2020-05-08 06:12:55
#问题:   当向一个https的url上发送请求,报错:未能创建 SSL/TLS 安全通道; using (WebClient client = new WebClient()) { string address= " https://xxx.com " ; client.Headers.Add(HttpRequestHeader.ContentType, " text/xml " ); System.Text.ASCIIEncoding encoding = new System.Text.ASCIIEncoding(); var response = client.UploadData(address, " POST " , encoding.GetBytes(msg)); } #原因:   ssl证书不受信任,验证失败; #解决方案:   请求之前,进行如下设置; ServicePointManager.ServerCertificateValidationCallback += new System.Net.Security.RemoteCertificateValidationCallback(bypassAllCertificateStuff); private static bool bypassAllCertificateStuff( object sender,

访问https接口报错 基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系

风格不统一 提交于 2020-05-08 04:43:08
详细错误信息如下 请求错误信息:发生一个或多个错误。System.Net.Http.HttpRequestException: An error occurred while sending the request. ---> System.Net.WebException: 基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系。 ---> System.Security.Authentication.AuthenticationException: 根据验证过程,远程证书无效。 在 System.Net.TlsStream.EndWrite(IAsyncResult asyncResult) 在 System.Net.ConnectStream.WriteHeadersCallback(IAsyncResult ar) --- 内部异常堆栈跟踪的结尾 --- 在 System.Net.HttpWebRequest.EndGetRequestStream(IAsyncResult asyncResult, TransportContext& context) 在 System.Net.Http.HttpClientHandler.GetRequestStreamCallback(IAsyncResult ar) --- 内部异常堆栈跟踪的结尾 ---

【转】C#各个版本中的新增特性详解

笑着哭i 提交于 2020-05-07 19:55:56
转自:http://www.cnblogs.com/knowledgesea/p/6694979.html 序言 自从2000年初期发布以来,c#编程语言不断的得到改进,使我们能够更加清晰的编写代码,也更加容易维护我们的代码,增强的功能已经从1.0搞到啦7.0甚至7.1,每一次改过都伴随着.NET Framework库的相应支持,也不断的带给我们期待与惊喜。下面我们就对c#一路走到现在,做一个回顾与学习。 C#语言目标与前行 c#的设计目标是有以下几点: 旨在是一种简单,现代,通用的面向对象编程语言。 语言及其实现应该为软件工程原理提供支持,例如强类型检查,数组维度检查,未初始化的变量引用检测以及自动垃圾收集。软件的鲁棒性,耐久性和程序员的生产力很重要。 旨在用于开发适用于分布式环境中部署的软件组件。 便携性对于源代码和程序员非常重要,特别是已经熟悉C和C ++的程序员。 支持国际化是非常重要的。 C#适用于为托管和嵌入式系统编写应用程序,从使用复杂的操作系统到非常小的专用功能都非常适用。 虽然C#应用程序在内存和处理能力要求方面是经济的,但是该语言并不打算直接用C或汇编语言直接与性能和尺寸进行竞争。 c#版本 c#版本中添加的功能: C#2.0 泛型 部分类型 匿名方法 迭代器 可空类型 Getter / setter单独可访问性 方法组转换(代表) Co- and Contra

SpringBoot中对SpringMVC的自动配置

北城余情 提交于 2020-05-07 19:37:38
https://docs.spring.io/spring-boot/docs/1.5.10.RELEASE/reference/htmlsingle/#boot-features-developing-web-applications 1. Spring MVC auto-configuration Spring Boot 自动配置好了SpringMVC 以下是SpringBoot对SpringMVC的默认配置: ==(WebMvcAutoConfiguration)== Inclusion of ContentNegotiatingViewResolver and BeanNameViewResolver beans. 自动配置了ViewResolver(视图解析器:根据方法的返回值得到视图对象(View),视图对象决定如何渲染(转发?重定向?)) ContentNegotiatingViewResolver:组合所有的视图解析器的; ==如何定制:我们可以自己给容器中添加一个视图解析器;自动的将其组合进来;== Support for serving static resources, including support for WebJars (see below).静态资源文件夹路径,webjars Static index.html support. 静态首页访问

.NET Core 3.0之深入源码理解Host(二)

假装没事ソ 提交于 2020-05-07 16:20:49
写在前面 停了近一个月的技术博客,随着正式脱离996的魔窟,接下来也正式恢复了。本文从源码角度进一步讨论.NET Core 3.0 中关于Host扩展的一些技术点,主要讨论Long Run Program的创建与守护。 关于Host,我们最容易想到的就是程序的启动与停止,而其中隐藏着非常关键的功能,就是Host的初始化,我们所需要的所有资源都必须而且应该在程序启动过程中初始化完成,本文的主要内容并不是Host初始化,前文已经累述。为了更好的守护与管理已经启动的Host,.NET Core 3.0将程序的生命周期事件的订阅开放给开发者,也包括自定义的Host Service对象。 注:本文代码基于.NET Core 3.0 Preview9 .NET Core 3.0中创建Long Run Program IHost与IHostBuilder 当我们创建Long Run Program时,会首先关注程序的启动与停止,.NET Core 3.0为此提供了一个接口IHost,该接口位于Microsoft.Extensions.Hosting类库中,其源码如下: 1: /// <summary> 2: /// A program abstraction. 3: /// </summary> 4: public interface IHost : IDisposable 5: { 6: //

手写事件代理函数 (Delegated function)

不羁岁月 提交于 2020-05-07 09:04:55
‘手写 ’ 这个词 ,面试是不是听过无数遍呢 ! 今天我们来手写一个这样的事件委托函数 =》 function( parent, selector, type , handle) {} 你需要传递的参数分别是: parent: 事件绑定的父级 selector: 选择器, type: 事件类型 handle: 事件处理函数 写之前 先了解一下事件委托的概念:     它是通过事件冒泡机制, 即子元素上触发的事件会冒泡到父级上, 即父级也会触发该类型的事件, 通过父级触发的事件拿到事件源对象e.target 就可以 知道 真正触发事件的元素是什么。 举个例子, 一个ul 下面有 1000 个 li , 我们 要给 li 绑定 点击事件 , 如果给每个li都绑定一个 点击事件 会 大量占用 内存 , 不利于性能优化, 这种情况下 我们 只需要在ul上绑定一个点击事件, 通过class 或者 id 来识别每个li , 这样就大大减少了事件注册, 而且 再 有新增的li时 我们也无需再去注册点击事件 我们来写个小demo HTML: <ul id="parent"> <li>1</li> <li>2</li> <li>3</li> </ul> css: .active{ background - color: green; } js: const parent = document