十字星

  • 首页
  • 技术
  • 随笔
  • 瞎折腾
  • 平面设计
  • 文集
  • 留言
  • 其他
    • API测试
C#
技术

C# 单例模式基类如何初始化子类

项目需要,有很多操作需要在线程中执行,而且启动线程的结构完全相同,因此想到用父子类并重写基类方法的方式实现,于是啪啪啪就写了写完随便新建一个空窗体测试下,才发现这种写法完全不行,单例在父类中初始化的是父类自己,无论用哪个子类调用,永远执行不到子类重写的方法. 首先想到的是将return _instance == null ? _instance = new ThreadHelper() : _instance;代码中的new ThreadHelper()改为虚方法,在子类中重写,一测试发现这个是静态属性中内容,方法…

2021-05-20 0条评论 1284点热度 1人点赞 cxw 阅读全文
技术

.net4.0捕捉非托管DLL代码异常

转发: 由于有些非托管的DLL内部异常未有效处理,当托管程序调用到这样的DLL时,就引起托管程序意外退出。 托管程序使用通常的捕获try……catch块不起作用。原因是.NET 4.0里新的异常处理机制引起。 在4.0以前,因为SEH异常被转换成了跟普通.NET异常相同的异常,这样程序员只要用catch ( Exception e)的模式就可以捕捉到所有的异常。这样处理的问题是,由于SEH异常通常都不是托管代码抛出的,托管代码根本就不知道SHE异常被扔出来的原因,简单的catch ( Exception e)处理使…

2021-04-24 0条评论 1424点热度 0人点赞 cxw 阅读全文
技术

C# String类型JSON数组转为JArray类型

string str = "[{\"roleId\":\"GROUP\",\"roleName\":\"商家\"},{\"roleId\":\"REGION_MANAGER\",\"roleName\":\"区域经理\"}]"; JArray lstRole = (JArray)JsonConvert.DeserializeObject(str);

2021-03-18 0条评论 1845点热度 0人点赞 cxw 阅读全文
技术

C#动态加载卸载类库

项目中有OCR识别数据功能,用的OpenCV3.4的库,实际使用中发现类库有内存泄漏问题,先想的方案是加载OpenCV类库的dll使用动态加载方式定时卸载重新加载,实际测试发现无效,后来用的方案是使用exe调用OpenCV库,使用进程间通讯传值给主程序,定时重启exe程序解决的.本文主要记录动态加载/卸载类库的内容. 1.在需要调用项目中新建类库并继承自,在类中使用反射机制加载被调用方 using System; using System.Collections.Generic; using System.Linq…

2021-03-01 0条评论 1390点热度 1人点赞 cxw 阅读全文
技术

C#窗口Form大小设置过小时,始终显示为136*39解决办法

窗口Form大小一般都是在设计界面直接设置好,或者在Form的构造函数中定义,正常都没有问题,但是当我需要一个40*40大小的窗口时,设置完,一运行出来个136*39的窗口,我把 this.FormBorderStyle = FormBorderStyle.None;加上仍然改变不了结局,百度找到的答案也是让把 FormBorderStyle改为None,后来问了下别的同事,答案真的是非常简单,把大小设置放在load中加载完美解决,图示红色方形就是40*40 的窗口Form

2021-02-04 0条评论 1518点热度 2人点赞 cxw 阅读全文
技术

C#程序启动前检测并确保使用的字体已安装

项目中使用了微软雅黑字体,支持的操作系统从xp到w10,有的操作系统自带有这个字体有的操作系统则不带需要自行安装,安装字体的代码示例网上很容易就能找到,文章最后也会贴出,实际编写时想实现如果操作系统已经有该字体就不在安装,因此先做了系统字体枚举判断,不存在时安装字体.实践中发现没有微软雅黑字体的电脑每次都会报错找不到字体,经过半天的专研发现操作系统字体删掉之后,系统枚举中仍然有该字体,导致程序不会自动安装,找到原因后去掉系统枚举判断,改为判断系统字体文件夹中是否存在字体文件,问题解决

2021-01-18 0条评论 1397点热度 0人点赞 cxw 阅读全文
12345…6
最新 热点 随机
最新 热点 随机
git迁移项目中的某个目录到新项目 winform判断设计模式还是运行时模式 C# 中的where T : class, new() 到底是什么意思? 解决安装.NET失败并提示“无法建立到信任根颁发机构的证书链” 关闭.net4.0的http访问默认代理
Excel表格拖动公式保持行号或者列号不变 .net4.0捕捉非托管DLL代码异常 英文字体设计1 MySQL查询结果集显示行号 自定义日历控件迭代 环境VS2019+NET4.6.1
标签聚合
CentOS Excel WinForm 工具 C# WordPress Linux W10 IT PHP
分类
书签
  • MKOnlinePlayer
  • SVN
  • 维基
倒计时
距2026年春节还有
距2026年元宵节还有

COPYRIGHT © 2021 十字星. ALL RIGHTS RESERVED

Theme Kratos Made By Seaton Jiang