
.NET
文章平均质量分 59
liulilittle
如果我只是恨你,那该多好;这一生,终究没能逃出这囚笼;也好,但愿此去,能化归烟云浮尘;逍遥天地,再无拘束。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
光分路器技术:有源分光器与无源分光器的技术差异与应用场景
光分路器技术解析与应用指南 本文系统对比了有源与无源光分路器的核心技术差异:无源型基于物理光分束(PLC芯片),具有零功耗、高可靠特性;有源型通过光电转换实现信号再生,支持协议处理但需外部供电。通过18组技术图表和12张参数对照表,详细分析了两者在插入损耗(无源典型0.1-0.5dB)、时延(有源可优化至1.5μs)、环境适应性等关键指标表现。 典型应用显示:无源分路器在FTTH场景可节省年耗电1.2万度/千户,而有源设备在工业互联网中能提供<100μs确定性时延。混合架构与50G PON兼容方案成为原创 2025-07-22 01:43:45 · 837 阅读 · 0 评论 -
光纤接入网技术体系AON、PON网络对比
光纤接入网技术体系与选型指南 本文系统解析了光纤接入网两大主流技术:有源光网络(AON)和无源光网络(PON)。AON采用点对点拓扑,具有独立带宽、低时延等优势,适用于金融、医疗等关键场景;PON通过分光器实现点对多点接入,成本效益显著,是家庭宽带和企业WiFi的主流选择。文章通过拓扑图、性能对比表和典型应用场景分析,揭示了技术选型的核心考量维度(带宽、时延、成本等),并提出了混合组网方案,为不同场景的网络部署提供决策支持。最后展望了25G/50G PON等下一代技术的发展趋势。原创 2025-07-20 00:22:26 · 738 阅读 · 0 评论 -
BBRv1 拥塞控制算法深度剖析 C++
本文深入剖析了BBRv1拥塞控制算法的核心原理与实现机制。通过状态机图、类结构图和流程图,系统展示了BBR的四大运行状态(STARTUP、DRAIN、PROBE_BW、PROBE_RTT)及其转换逻辑。重点解析了BBR通过精确测量瓶颈带宽和最小RTT来优化网络性能的创新方法,包括其独特的带宽估计机制、轮次检测算法和温和的丢包处理策略。文章还详细介绍了BBR在UDP协议栈中的集成架构和典型调用流程,揭示了其如何实现高吞吐、低延迟的网络传输特性。原创 2025-07-06 15:28:30 · 758 阅读 · 0 评论 -
日新F1、瑞研F600P 干线光纤熔接(熔接损耗最大0.03DB)
必须≤0.3°(双边累计误差<0.6°)▶ 实测案例:切割0.35°时,损耗波动达0.05-0.08dB(超干线标准)V型槽底部残留粒径>2μm的灰尘 → 纤芯高度偏移≥0.8μm电极氧化层厚度>5μm → 电弧稳定性下降40%① 每次熔接前用纳米晶须刷(如3M 7320)清洁V型槽② 每熔接200芯后,用800目氧化铝砂纸打磨电极:支持≤0.5°(实际可补偿至0.7°)▶ 实测案例:切割0.5°时,通过α/β轴倾斜补偿,损耗仍稳定在0.02-0.03dB。原创 2025-03-07 00:06:55 · 1247 阅读 · 0 评论 -
家中自用的两台光纤熔接机,以干线0.03DB熔接损耗标准,进行熔接测试。
夹具、V型槽、镜头,及电极棒、L-CCD清洁,清洁线槽时用一把高精度的碳钢美工刀,需要尽可能把卡住纤芯的线槽都清理干净,因为灰尘会顶住纤芯,导致角度跟高度有问题,但你需要垫上无尘布,否则把线槽划伤,以后很难在熔的出来干线标准的光纤了。5、开始熔接之前,但这一步需要注意,我们需要暂停只做 “纤芯的推进对准”,而不做放电熔接,这是为了检查纤芯,到底在熔接机线槽之中是不是被切割的满足要求(角度),即放置在卡线槽之中的纤芯(左、右)是否已经对平及纤芯端面。(四马达熔接机为 “包层对准”)原创 2025-03-06 04:22:28 · 1814 阅读 · 0 评论 -
FTTR 自家全室内光网解决方案分享
买一个二手华为OLT,几十个口子OLT设备也花不了几块钱,因为很少家用玩家搭建这种方案,你要知道运营商淘汰的OLT设备,都是直接当垃圾甩,让人拉起走的....就是纯纯卖废铁的价格,所以,去垃圾回收站买运营商淘汰的华为OLT,其实最便宜的,关系好说不得还能免费捡,当然单独买一个二手的OLT设备也并不贵的。从成本来说,第二个最便宜,运营商ONU,这个需要单独买ONU/ONT设备的,当然也可以是买ONU/ONT SFP光模块(光猫棒棒),目前主流是GPON的,EPON的逐步在淘汰了。2、全光纤收发器(PON)原创 2025-02-25 02:47:46 · 1334 阅读 · 0 评论 -
FTTR 如何光纤热熔?(熔接)
在前面的流程都是相差无几的,区别仅在于热熔需要一台:“熔纤机”,并按照 “熔纤机夹具”(如:三合一夹具)及熔接机V型槽电极棒的长度来切割纤芯端面。在热熔之前,人们需要把热缩管套入熔接光纤线的任意一方,可以在左边,可以在右边,这取决于被熔接的哪一方光纤线重量较轻,通常套入热缩管到尾纤上。4、从夹具上取出光纤,小技巧:取纤时用一些力拉住被熔接的皮线两端,纤芯不怕拉,但怕折。2、切割好之后用熔纤机夹具,夹好皮线之后送入熔纤机夹具槽上,并确保基本的纤芯对准。8、测试已熔接好的光纤线的,收发光功率计。原创 2025-02-22 01:28:05 · 657 阅读 · 0 评论 -
FTTR 如何光纤冷接?
10、切割后检查纤芯漏光及端面平整度,UPC需切越平越好,APC需尽量切成30°角斜面。准备就绪之后:(冷接尽量开红光在接,最终成品效果会比较好)15、上推冷接子纤芯卡扣,扣紧并拉入纤芯到耦合液对接端面。9、送入高精度光纤切割刀,定长器切割:25~28MM。13、将纤芯平稳插入冷接子,并轻微弯曲。7、擦拭被开剥出来的光纤 “纤芯”1、准备一根欲被冷接的光纤蝴蝶线。17、扣上纤头卡套,至此冷接完成。通常为:白色、黄色、蓝色涂覆层。11、拿出冷接子并拔出纤头卡套。16、测光功率计,评估冷接质量。原创 2025-02-22 01:11:33 · 602 阅读 · 0 评论 -
FTTR内网光纤网络搭建及维护
并且承建光纤子网是紧跟时代及未来的发展,从千兆升级2.5GE、10GE仅需更换光电设备即可,而无需重新部署线路,并且全光子网确实很快乐,用过的童鞋都说好,稳定速度快口子大,快速升级无瓶颈,并且装维成本并不高,大家让别人装维弄一下网线也得几十上百块,多来那么几次比大家自己弄全光子网可贵太多了,所以大家何不如,自己弄一步到位,笑~。为了解决这类问题,所以,我们需要自建维护光纤内网,光纤在内网之中几乎不会存在这一类问题,因为光纤传输数字信号,信道干扰是很低的,其仍存在回波信噪干扰。原创 2025-02-21 18:29:25 · 2309 阅读 · 0 评论 -
Cloudflare CGI网关跟踪
Cloudflare CDN提供一种易于用户检索访问节点及区域信息的CGI网关跟踪服务,我们可以在中国大陆采用不同的网络线路来测试访问区域。命令行一:wget -qO- http://172.64.153.2/cdn-cgi/trace。命令行二:curl -s http://172.64.153.2/cdn-cgi/trace。loc=本次访问客户端从那个国家/地区来访问,CN中国大陆,HK香港,MO澳门,TW台湾。中国电信CN2网络用户访问,colo 节点基本是(HK:中国香港特别行政区)原创 2022-09-26 18:34:52 · 1933 阅读 · 0 评论 -
网络丢包产生的几个原因,总结!
2.4、很多网线插入网卡,可以一直保持 1000Mbps 端口速度显示,但实际上只能承载 500Mbps 端口的宽频吞吐。5.5、Portal 吞吐达峰,ASN与ASN路由器之间接入的端口达峰。2.3、网线故障,例:1000Mbps 掉 100Mbps。3.3、MAC+IP+网口映射丢失/冲突。3.4、超过网口/网线承载的最大吞吐速率。4.3、MAC+IP+网口映射丢失/冲突。4.4、超过网口/网线承载的最大吞吐速率。2、传输介质,信号衰竭/干扰,超出线路承载上限。3.5、高端交换机的限制策略。......原创 2022-08-31 20:09:58 · 13114 阅读 · 0 评论 -
GDB 本地调试 Microsoft .NET Native(CoreRT) 原生编译的 C#/VB.NET PE可执行文件
但需警告,大多数的开发人员,AOT程序不意味着,代码执行的性能就能比,JIT即时编译的托管程序性能更强悍,一旦人们采用AOT编译程序,那就是放弃了JIT为每个目标机器CPU,利用CPU Instruction Set(指令集)高度优化硬件加速的特性,因为AOT要保证通用平台上的代码可执行,就不可以使用更为先进的 “CPU指令集” 操作数,否则老旧平台的CPU可能没法处理这样的指令而抛出 “CPU指令操作数错误” 的中断信号。4、玄学的性能,或许比托管跑的快,也可能比托管跑的慢,取决于多个因素。......原创 2022-08-17 16:34:10 · 596 阅读 · 0 评论 -
Ubuntu 16/18/20/22 Linux 发行版系统上面运行 .NET Core 程序依赖库及 .NET Native 原生可执行程序调试相关。
安装GDB/GCC相关的东西可以用于调试由 Microsoft .NET Native(CoreRT) 原生编译器(.NET) 编译的 Linux ELF二进制可执行代码程序,它的函数栈命名很有规范的,但缺点是不可以原生编译选项配置上面不得开启大量的删减调用堆栈符号表信息与优化裁切堆栈(优化过后的函数堆栈检索相对要麻烦很多,有些是根本看不懂的)一般性:命名空间 + 类名 + 函数名(基本是编译后的IL元数据美化为C风格的命名)举例命名的符号规范一般为:(注意是C风格,而不是C++符号风格)......原创 2022-08-17 15:57:35 · 876 阅读 · 0 评论 -
.NET 设置Socket 对象的“TFO”快速打开连接选项(跨平台兼容的)
.NET设置Socket对象的“TFO”快速打开连接选项(跨平台兼容的)原创 2022-07-17 17:22:27 · 185 阅读 · 0 评论 -
.NET Socket 实例安全且高性能的TCP连接关闭。
.NET Socket 提供的封装 Shutdown 人们不要去调用它,因为它可能无意义的抛出SHE结构化异常,而异常在大面积被抛出的情况下,可执行程序是没有办法捕获的,因为调用堆栈会因为大量的异常抛出/捕获而不搞坏,无论是C/C++,还是C#在同一个时间内大量的异常抛出,都无法被捕获,所以对于C派系的工程师,我们要求代码不允许存在出发任何异常,否则这个代码是低效且垃圾的,JAVA就随便抛异常,因为它们的异常只是逻辑上的并不算真正意义上的SEH结构化异常,不会因为大量的异常抛出/捕获导致程序直接崩溃。对于.原创 2022-07-11 15:26:50 · 539 阅读 · 0 评论 -
IP地址 “V6ToV4,V4ToV6” 转换函数实现
关键数据结构 [StructLayout(LayoutKind.Explicit, Pack = 1, Size = 16)] private struct IPV62V4ADDR { [FieldOffset(0)] public long R1; [FieldOffset(8)] public ushort R2; [FieldO原创 2022-05-29 02:45:06 · 1290 阅读 · 0 评论 -
.NET Datagram(数据报)Socket 潜在停止收取数据的疑难故障问题。
UDP socket 属于数据报类型的 “套接字” 该问题,自然也存在上述提到的疑难故障问题,通常一个 UDP socket 持续一天及以上频繁不停的收取 “数据报” 数据,就会出现奇葩的 “ReceiveFrom” 失效,再也收不到任何数据的问题,在.NET的基础上要解决这个问题的办法只有一种,关掉该 Socket 重新实例化一个新的 Socket 以后,即可正确恢复工作。该问题覆盖到 “.NET Core”、“.NET Framework”、“.NET Standard” 等,至今未被 Micros原创 2022-05-28 16:07:27 · 291 阅读 · 0 评论 -
.NET CoreRT AOT原生程序编译使用的一些小建议
微软为 dotnet 提供的一个.NET托管程序的原生程序AOT编译器,但目前限制还是蛮多的,比如动态载入程序集、动态表达式、Emit(反射发出)这些都不被支持(备注:动态表达式,底层实现是基于 Emit)本文不东扯淡,西扯淡跑出来坑人,只提供一些关于 .NET CoreRT AOT原生编译相对而言较为中肯的建议。1、动态编程限制:由于目前.NET AOT编译技术上的一些限制,微软还没有做到把需要动态JIT编译的部分与AOT静态编译的部分混合在一起,只能单AOT静态编译,所以这也就导致了动态编程原创 2022-03-11 00:46:31 · 2414 阅读 · 0 评论 -
判定一个 native 程序二进制文件是否为:.NET CoreRT 编译
工具(一):记事本全文搜索;1. System. 关键字2. F:\workspace\_work 关键字,例如:“F:\workspace\_work\1\s\src\Common\src\System\SR.cs”3. .cs 关键字4. GCBreakOnOOM 关键字工具(二):1. objdump -tT -C 程序文件 | grep System.2. nm -C Exchanger | grep System..NET Native 程序符号表上面会存在大量原创 2022-03-07 18:04:25 · 330 阅读 · 0 评论 -
.NET CLR函数之间相互跳转,跳转地址是32还是64位地址标识符?
在计算机之中调用一个函数,实际上就是JMP到另外一个函数的入口,区别是CALL会多压入一层RET_EIP(#PC)。具体可以参看:(1条消息) C/C++ 内嵌 RETN 与 JMP 指令调用函数(x86)_liulilittle的博客-优快云博客CALL等价于:PUSH RET_EIPJMP FUNC_RVA加密狗之类的就比较喜欢这种黑魔法写法,各种JMP,RETN方式来调用函数,给技术人员造成了非常大的阅读困扰。.NET CLR编译的函数地址都是32位RVA,标准的X86-32原创 2022-03-04 17:32:25 · 224 阅读 · 0 评论 -
不同发行版 DotNet GC(垃圾回收器)类型如何配置?
DotNet CLR 目前提供三类GC垃圾回收模式1、Server.GC(服务器GC)2、Workflow.GC(工作站GC)[Concurrent GC]3、Nonconcurrent.GC(非并发GC)[Workflow GC]2/3皆属于工作站GC大类,是一个非常基础的问题,面试.NET技术人员,应成为基本提问题目。详细参见 MSDN:垃圾回收的基本知识 | Microsoft DocsDotNet CLR 默认应用GC配置为:Workflow.GC Concurren原创 2022-02-25 10:26:19 · 861 阅读 · 0 评论 -
Windows 11 操作系统上面运行 VMWare Workstation
可以安装 Windows 11 操作系统的CPU都支持虚拟化技术,但 Windows 11 安装 VMWare Workstation 是无法运行的,不像 Windows 10,只要不安装 Hyper-V 的情况下都是可以运行 VMware 的。但 Windows 11 仍旧可以运行 VMware,这需要修改一些系统设置并且修改组策略并且重启 Windows PC。本文提供解决 Windows 11 无法运行 VMWare 的办法,但需要注意一旦要运行 VMWare,Hyper-V 就不可以运行,这原创 2022-02-12 18:22:06 · 27321 阅读 · 7 评论 -
.NET TCP/IP Socket 异步循环收取导致栈溢出问题
我们知道 .NET TCP/IP Socket 异步循环收取官方及绝大多数例子都是循环收取的,但实际上这个方法存在栈溢出的问题。MD,收到收到堆栈溢出程序直接就崩了,目前解决的方案有几个路子,Stack Overflow 有老外提出的几个路子都特别野,我先说老外提的一个路子的优点,它的确解决了 .NET TCP/IP Socket 异步一直循环收取会导致栈溢出的问题,但是IO吞吐量都不怎么上的去了呀,而且对CPU的负担变得非常大。它们提出的方法就是:本次收取完毕的时候投递拉取下个收取由 Thread原创 2022-01-30 23:28:47 · 2506 阅读 · 1 评论 -
适用C#语言遥感TLS协议流量 sni_host 连接的域名地址
识别TLS协议:Client Hello (1)RFC4366/6066(Server Name Indication extension)获取SNI域名信息,这是有必要的,无论是实现域名审查还是 sni_proxy,我们都需要感知它,另外网站CDN,也是依赖于遥感SNI域名来呈现不同网站资源的。 [StructLayout(LayoutKind.Sequential, Pack = 1, Size = 5)] private struct tls_原创 2022-01-20 16:55:30 · 438 阅读 · 0 评论 -
VEthernet 框架实现应用内 IPv4 地址路由过滤
例如我们需要检查 “中国大陆”、“中国香港” 等地区的IP段,那么我们只需要在Filter 对象实例之中往 “Addresses” Map 字典对象里面添加 IP+CIDR 格式的IP无间路由就可以,然后调用 Filter 对象实例提供的 IsDirect 函数,返回成功则代表当前检查IP地址是属于 Filter 上面配置的IP路由表内的段上子IP。namespace VEthernet{ using System.Collections.Concurrent; using...原创 2021-09-23 17:11:34 · 463 阅读 · 0 评论 -
C# 调用系统接口刷新 “系统DNS查询缓存”
方法有两种:1、是调用命令行(最次的办法,当然胜在家喻户晓;稍微懂点PC的人基本都知道 ipconfig /flushdns 命令行调用一般有两种办法:用 system(std-c库)或者 CreateProcess、ShellExecute 方式(C# 通常是调用 .NET 基础框架函数库之中的 “Process”)但是缺点是占用系统资源大,很容易卡住系统前台。2、是调用WINAPI(对于一名合格的 WIN 平台的开发人员而言,这才是基本操作) DnsFlushResolver...原创 2020-07-24 23:41:13 · 769 阅读 · 0 评论 -
使用 C# 7 语言编写匿名的 HTTP-PROXY 正向代理服务器【匿名代理:无账密验证】
该代理实现是正确精简的,你可以基于该代码的基础上进行优化,HTTP代理实际上也有很多隐藏的坑点,如果你正在编写一个正向代理服务器,发现了例如:从一个网卡打开到另外一个网页,该网页打开会造成 HTTP-503 之类的错误,可以参见本文列出正向代理代码。 该代理的源代码摘要自 PPP,网络基础库;;值得一提该代理实现提供了对于:HTTP隧道转发、HTTP明文代理的支持;这意味着,通过HTTP隧道代理访问的TCP连接,并不会区分TCP流的协议类型。一般浏览器之中 HTTPS 请求走 HTTP代...原创 2020-07-24 22:59:21 · 1364 阅读 · 1 评论 -
Windows 平台一个正确控制台捕获(Control + C、关闭控制台、Control + Backspace 等的新姿态(基于 SetConsoleCtrlHandler API函数)
Samples:namespace Ppc{ using System; using System.Threading; using Ppp.Core; using Ppp.IO; using Ppp.Vpn; using Ppp.Vpn.Ppp; using SimpleJSON; public static class Program { private readonly static AutoResetE原创 2020-06-06 14:42:18 · 939 阅读 · 0 评论 -
适用于.NET 2.0/4.0 刷新系统DNS与设置以太网接口DNS服务器(多组)
DnsFlushResolverCache (注:是未公示的内部API,应用于 ipconfig /flushdns 命令) [DllImport("Dnsapi.dll", SetLastError = true)] [return: MarshalAs(UnmanagedType.Bool)] private static extern bool DnsFlushResolverCache(); public static bool.原创 2020-06-06 14:25:29 · 280 阅读 · 0 评论 -
In Visual C/C++ 之中运行你的 .NET Executable Assembly(Use Microsoft .NET CLR Framework) != Mono Jit
#include <string>#include <cstring>#include <iostream>#include <metahost.h>#include <Windows.h>#include "rc4.h"#include "resource.h"// --confusion = C:\Users\yxg\Desktop\tun2socks\tun2socks\bin\Debug\publish\public\l.原创 2020-05-29 15:02:02 · 522 阅读 · 0 评论 -
.NET托管函数拦截器 / Interceptor.NET
Interceptor.NET 是专用于.NET托管函数的拦截器(只限 IA32/IA64 指令集平台的处理器,ARM之流不在考虑范围),通过 “Interceptor.NET” 你可以对 “.NET应用域” 之中任何一个托管函数进行劫持或者放行,似乎听起来很有意思不是吗? 那么 “Interceptor.NET” 是只可以工作在 “Windows” 平台下面?答案是否定的...原创 2020-05-05 18:29:45 · 1170 阅读 · 0 评论 -
从.NET Framework之中摘要的 DateTime(日期时间)移植到 C/C++(Linux)
DateTime.h#pragma once#include <string>#ifndef NULL#define NULL 0#endif///////////////////////////////////////////////////////////////////////////* * 时间计量单位为:千万分之一秒,即一个周期100纳秒时。 *...原创 2020-04-17 10:42:06 · 306 阅读 · 0 评论 -
donet-core 跨平台支持“套接字端口地址可重用”(SO_REUSEADDR)
usage: Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); EnableReuseAddress(socket);impl:代码实现参考了KestrelHttpServer .NET Core 2.1...原创 2020-04-17 10:18:13 · 447 阅读 · 0 评论 -
donet-core 使用C#获取CPU使用率、内存总量、可用容量、适用容量的获取(Linux/Windows)
usage:SystemEnvironment.CPULOADSystemEnvironment.AvailablePhysicalMemorySystemEnvironment.UsedPhysicalMemorySystemEnvironment.TotalPhysicalMemorySystemEnvironment.csnamespace GVMServer...原创 2020-04-17 10:10:37 · 5061 阅读 · 3 评论 -
dotNET 在 x64 环境下利用 shellcode 获取 cpuid
x86 环境下获取 cpuid 参考 https://blog.youkuaiyun.com/liulilittle/article/details/80958926x86/x64 环境下获取 cpuid 参考 https://github.com/liulilittle/nsjs/blob/c11a4377b1b3da7376bc5d1ecdb5b1afb2759e1e/nsjsdotnet/Core/Ut...原创 2018-07-09 12:45:52 · 857 阅读 · 0 评论 -
获取CPUID序列号的两种办法
Win32k 平台上,获取CPUID的办法主要有两种,一种是利用 WMI 另一种是利用 x86 汇编的 cpuid 指令,而最快的办法就是通过汇编了,而且 WMI 与汇编之间效率上的差距的确有点让人难以忍受,WMI 获取 CPUID 的效率几乎接近了一秒钟,而利用 cpuid 指令的办法,大概是几个 us 时间的问题,这种令人咋舌的巨大差异,让人有些难以忍受。using System;u...原创 2018-07-08 15:12:57 · 32384 阅读 · 5 评论 -
C# 基于平面点的寻路算法
此算法与主流的,A/B*、广度优先、深度优先、迪杰斯特拉等“相邻矩阵”类的网格算法,从中心上是不同,它是面向平面的,所以就效率来说要比“相邻矩阵”网格这类算法要低得多。 应用的场景不同考虑的方式就会有很多不同,我们将其应用到我们服务的产品中,它运行于“医院”的内网中,并不会存在太大的性能问题,STA下一秒钟处理几百上千条没多大问题,链接点越多效率会越慢(受限于循环的影响)。 与...原创 2018-06-19 17:13:44 · 1386 阅读 · 0 评论 -
.NET Expression 从零开始五:循环(Loop)
一直没有写关于”循环”方面的东西,今天我们来介绍“.NET Expression”中,动态的循环表达式应该如何编写,先说明一个明确的概念,在计算机中是不存在“计次循环[for]、判断循环[while]、判断循环尾[do...while]”的,只有“循环[loop]”C/C++/C#中都具有一个叫做“goto”的关键字,而“goto”关键字是对“jmp”指令的封装。 以下是...原创 2018-06-25 15:10:13 · 2083 阅读 · 0 评论 -
nsjsdotnet 映射全局对象
众所皆知,在 google-chrome 浏览器中,我们在 JavaScript 的”全局域“定义任何的成员(例:方法、变量)是可以通过”全局域“的”window“变量获取的,而”nsjsdotnet“可能在很多人的眼中,被认为不支持这类型的操作,但事实时”nsjsdotnet“在设计时就认为这是没有太多必要的。 你可以把 nsjsdotnet 中每个虚拟机的 Global 实例,附...原创 2018-06-25 14:15:41 · 333 阅读 · 0 评论 -
dotNET 为COM实例挂接事件
一般来说COM类要想要具有事件通知,那么它必须实现事件源,但事件源具有两类形式一类是传统的“IConnectPoint”接口方式“点对点”挂接,比较麻烦需要知道被挂接事件接口的IID,另一类是“IReflect”接口挂接,它不需要知道挂接事件接口的IID。 一般来说大多数COM事件的挂接,都只采取传统的方式用“IConnectPoint”挂接,而类似如“MSXML2.XML...原创 2018-06-14 14:19:18 · 978 阅读 · 1 评论