登录社区云,与社区用户共同成长
邀请您加入社区
这是一个基于 C# Windows Forms 的桌面端 OCR(光学字符识别)应用程序,通过集成百度 PaddleOCR v5/v6 系列的onnx模型,利用 OpenVINO 推理引擎在本地实现高效的文字检测与识别。用户可通过图形界面选择图片,一键完成文字识别,并在界面上直观查看识别结果与标注框。
【摘要】UGUIGenerator是Unity框架MyFramework中的UI代码自动生成工具,旨在解决UI开发中的重复劳动问题。它通过预制体标记与配置,自动生成UI绑定代码,具有以下特点:1. 选择性生成业务所需节点,避免冗余字段;2. 支持子窗口/数组/对象池等复杂UI结构;3. 通过区域标记实现安全重生成,保留手写逻辑;4. 包含节点类型推断和自动检查机制。该工具将UI预制体与代码的绑定关
摘要:基于Semantic Kernel的.NET智能体开发指南 本文介绍了如何利用微软官方的Semantic Kernel框架在.NET生态中构建工具调用型AI智能体。相比原始HTTP调用方式,该框架提供了完整的编排内核架构,支持插件化工具调用、多步推理和记忆管理。 核心内容包括: 智能体三层能力模型(模型推理层、工具执行层、编排内核层) 基础实现三步曲:构建Kernel内核、定义工具插件、启用
基于的桌面端 OCR 文字识别演示程序,通过 C# Windows Forms 实现模型的在线下载、图片上传、OCR 推理、检测框可视化及耗时统计。
本文详细介绍了如何从零开始使用C#实现前馈神经网络,不依赖任何外部AI库。文章分为三个核心部分: 理论基础:讲解神经网络的前向传播、损失函数(MSE)和反向传播机制 架构设计:采用纯C#实现三个核心类: Matrix类:处理矩阵运算和激活函数 Layer类:管理权重、偏置和层计算 NeuralNetwork类:整合网络结构和训练过程 关键实现:展示了矩阵运算(包括Xavier初始化)、Sigmoi
本文介绍了一套工业级标准化数据持久化架构设计方案,针对工业上位机项目中常见的数据丢失、读写异常等问题提出解决方案。文章首先分析了工业数据开发的六大痛点,包括数据耦合、配置丢失、缺乏容错等问题。然后提出四层数据架构设计:实体层定义数据模型、仓储接口层统一规范、仓储实现层具体读写、服务层对外提供能力。重点展示了通用仓储接口的定义和JSON本地仓储的实现,支持离线缓存和自动恢复功能。该架构能有效解决工业
摘要: 随着Kimi等AI工具普及,用户对文字内容转Word文档的需求激增,但传统复制粘贴方式存在格式错乱、效率低下等问题。本文分析了市场痛点,提出智能解析引擎、跨格式转换等核心技术方案,对比五类导出工具优缺点。数据显示78%用户有转换需求,轻量化、多终端工具成为主流。以AI导出鸭为例的全终端解决方案,通过浏览器插件、移动端和桌面端覆盖,实现一键转换、排版保留,显著提升办公效率,成为衔接AI创作与
全打印3D结构上传到嘉立创开源项目中啦,大家可以自由下载。结构分为外壳,后上盖和前面板三部分。根据不同的电瓶车充电器的电路尺寸,只需要更新后上盖压板就可以适配。后上盖,中间的竖直板是充电器板压板,参数化配置,方便根据不同的充电器板尺寸适配。底座结构图,适配50x50mm风扇。
本文介绍了C#中async和await的异步编程机制
2026-6-13。
本文介绍了C#中经典的HelloWorld程序,解析了其基本结构和代码含义。主要内容包括:1)创建简单的控制台输出程序;2)解释using、class、Main方法等核心语法;3)区分WriteLine和Write的差异;4)C#9引入的顶级语句简化写法;5)修改输出内容的方法;6)列举初学者常见错误(如缺少分号、引号不匹配等)。通过这个基础示例,帮助读者理解C#程序的运行机制和基本语法规范。
C#编程8大陷阱深度解析:字符串拼接、资源释放、异步死锁、事件泄漏、装箱拆箱、Linq枚举、时间处理、异常吞噬等关键问题剖析。文章通过代码实例对比错误与优化方案,揭示性能瓶颈、内存泄漏等隐患,提供使用StringBuilder、using语句、async/await最佳实践、事件取消订阅、泛型集合、Linq缓存、UTC时间、异常处理等专业解决方案。这些实战经验帮助开发者避开常见陷阱,提升代码质量和
这篇文章探讨了如何将YModbus工具的能力通过脚本、测试平台和AI Agent稳定调用,而不是简单地在界面添加聊天框。作者认为,AI应通过明确的命令或接口调用结构化结果,而非依赖脆弱的图形界面操作。文章分层次介绍了实现方案:首先完善CLI(命令行接口),确保读写操作安全可控;其次通过本地Agent Bridge控制正在运行的桌面工具;再提供HTTP接口作为中间层;最后通过MCP(Modbus控制
优势 1:完美的解耦与引用同步代码中字典和队列里存的不是简单的字符串,而是DeviceItem对象的内存指针(引用)。你在任何地方通过字典修改了,队列里那个对应的器件状态会自动跟着变。下料时直接出队,拿到的就是最新状态,不需要再去字典里二次匹配。优势 2:彻底杜绝“中途超车”导致的物理错位在流水线上,测试结束的顺序(字典更新的顺序)可能因为多工位并行而发生乱序(比如 2 号比 1 号先测完)。但是
超时控制:通过实现精确的超时取消。异步集成:与和 TPL 无缝配合,适合现代 .NET 应用。高鲁棒性:结合异常处理和资源清理,确保稳定性。简洁高效简化异步生产者-消费者模型。场景示例推荐用法网络请求API 调用文件操作异步读写生产者-消费者异步队列批量任务并行下载通过优化异步生产者-消费者模型并结合的超时机制,开发者可以实现高效、可靠的异步任务超时控制,满足网络、文件处理和任务队列等场景的需求。
和PulsePulseAll是 C# 多线程编程中实现线程协作的强大工具,适用于生产者-消费者、任务调度、资源池等场景。Wait:释放锁并等待条件,唤醒后重新竞争锁。Pulse:通知一个等待线程条件可能满足。PulseAll:通知所有等待线程,适合多线程场景。
本文系统性地探讨了HybridCLR热更新性能优化的五大维度:启动优化、运行时优化、内存优化、网络传输优化及监控诊断。在启动阶段,通过延迟加载、预编译和元数据裁剪可将冷启动时间缩短50%以上;运行时利用DHE变更率模型和跨边界调用优化,能在30%变更率下保持80%以上的原生性能;内存管理方面建议合理规划布局和对象池化,控制额外开销在10MB内;网络传输采用差分包压缩和并发下载策略,显著提升更新效率
两三个人做小型交付,经常被硬套厚重流程:填六列责任矩阵、开密集排期会议、编写十几页项目章程。最终出现荒诞的现状:流程文档比业务代码更繁琐,本该书面敲定的需求边界全靠口头沟通,本该严格审核的代码合并直接一键通过。本系列第二篇《执行骨架》提供了项目管理完整主干体系,第五篇《AI 审查与门禁》定义了代码审查与发布合规清单。本文只解决一个核心问题:团队人手少、交付周期紧时,哪些规则必须保留,哪些流程可以轻
不知道有没有小伙伴遇到过这样的场景:老板让你用AI分析一份50页的PDF年报,你把文件直接扔给大模型,结果模型要么报错文件太大,要么只提取出零散的几段文字,关键数据全丢了。更让人头疼的是,当你的知识库里有PDF合同、Word文档、PPT课件、Excel报表、图片截图、会议录音……各种格式五花八门,想把它们喂给AI做RAG检索,光是格式转换就得折腾半天。数据格式的多样性已经成为AI应用扩展的最大瓶颈
if (!// 根据每个槽位的DataType,创建对应的List<double/int/string/bool>遍历所有启用的槽位,根据数据类型调用等,在队列内部初始化对应的List<T>。这个操作只执行一次标志防止重复定义)。DataIn 的ExeModule是一个带环形缓冲的生产者:它从上游模块通过变量链接拿到数据,按槽位和类型写入全局队列,写完后发信号唤醒等待中的 DataOut 消费者。
1、程序入口Main方法最先执行,负责启动整个项目;2、Show()非模态:不阻塞代码、可随意切换窗口;3、ShowDialog()模态:阻塞代码、独占窗口、带返回值;4、DialogResult可以给模态窗口设置返回状态;5、设置this.DialogResult.OK 可以自动关闭当前弹窗;6、登录跳转最优方案:模态窗口 + DialogResult + Application.Run切换主窗
本文分享一个基于开源项目 lceda_step_downloader 修改的立创 EDA 3D 模型下载工具。本版本在原项目基础上增加了 STEP 模型保存目录选择功能,并提供 Windows 图形化安装包,安装时可直接选择安装位置。原项目作者:@seishinkouki原项目地址:https://github.com/seishinkouki/lceda_step_downloader本修改版地
YModbus是一个开源的Modbus通讯库,提供完整的Modbus协议支持。项目主要包含核心库(协议处理、TCP传输)、串口支持(RTU/ASCII)、从站模拟、命令行工具等模块。支持Modbus RTU、TCP和ASCII三种通讯方式,上层接口保持一致,简化开发流程。核心功能包括设备读写(支持常用功能码)、多设备轮询(ModbusMasterClient)以及从站模拟(用于调试和测试)。该库适
摘要: 针对DeepSeek生成文本转Word的行业痛点,「AI 导出鸭」提供一体化解决方案,通过智能解析引擎、格式自适应算法等技术,实现一键导出标准化文档。相比传统复制粘贴(格式错乱)、WPS(字数限制)或Pandoc(操作复杂),该工具具备高效(万字文档12秒导出)、高精度(出错率<0.8%)及跨终端兼容性(浏览器/移动/桌面端全覆盖)。白皮书数据显示,其综合性能领先,尤其适合学生、职场及自媒
Grok文档导出痛点与AI解决方案 知识工作者使用Grok生成内容时,常面临格式混乱、跨设备兼容性差、长文档排版耗时等导出难题。市场亟需能够保留复杂结构、全终端适配、一键输出标准Word的解决方案。 核心方案对比: 手动复制粘贴:格式错位严重,效率低下 WPS智能排版:需人工修复,半自动化 Pandoc转换:技术门槛高但效果优秀 AI导出鸭:唯一实现全终端覆盖,原生保留表格/代码/标题层级,自动化
家中小朋友刚上一年级,每天放学后,学校班主任留作业要求打卡并上传视频。陪同打卡,是心累的。想着能否让其在设定时间内自主打卡,于是就有了这个想法,做一个简单显示时间的东西。从CSDN上一个博主那里简单的了解下winform,没做过一个项目;这样看来,我似乎什么都不会。从AI学习编码,没想到还成功了。对winform及操作函数有了一个简单了解,其它的收获就不再啰嗦了,个中体会吧。以上便是我的一个基本需
摘要: 工业企业数智化面临AI能否理解业务与替代人力的核心问题。向量空间JBoltAI通过“本体语义平台”和“企业级Agent平台”分别解决这两个痛点: 企业大脑(本体语义平台):将企业非结构化数据(如文档、表格)转化为结构化知识,建立业务术语关系模型,解决AI“语义不对称”问题,确保回答基于企业真实语境。 数字员工(Agent平台):将标准流程转化为可执行技能,支持调用API、对接ERP/MES
本文记录了一个字符分割问题的解决过程。原Halcon脚本的分割功能在移植到.NET后失效,筛选后区域数量为0。通过逐层排查发现二值化和形态学处理生成了横向噪声而非有效字符区域。对比Halcon脚本后,改用find_text算子重构分割流程:创建文本模型并设置字符参数,简化预处理步骤,直接定位字符区域。最终C#实现通过初始化文本模型并调整识别参数,解决了分割失败问题。这种方法比手动分割更稳健,减少了
本文分享了异步编程的核心概念与C#实现要点:1) async/await机制通过非阻塞等待实现并发;2) Task作为异步操作容器,封装结果、状态和异常;3) WhenAll/WhenAny实现多任务协同;4) CancellationToken提供取消机制,需主动检查中断信号;5) 特别介绍了Unity优化的UniTask方案。文章采用代码示例对比同步/异步差异,并解析了Task和取消令牌的内部
摘要 本文系统介绍了五种将Markdown转换为Word文档的方法: 第三方工具(如DS随心转):适合普通用户快速转换AI生成的Markdown内容,支持浏览器插件、App和小程序多种入口,能保留表格、代码块和LaTeX公式。 Pandoc命令行工具:开源方案,支持批量转换和样式模板控制,适合技术用户,但学习成本较高。 Typora编辑器:需配合Pandoc使用,提供所见即所得的编辑体验,适合单篇
本文总结了YOLO模型导出ONNX及C#部署中的常见坑与解决方案。关键点包括:1) 必须严格锁定版本组合,推荐使用验证过的稳定版本;2) ONNX导出参数要规范,特别是fixed尺寸、simplify=True和opset=17;3) C#部署常见问题集中在颜色空间、维度匹配和内存管理;4) 推荐使用Netron和onnxsim等工具排查问题。核心建议:保持Python和C#环境一致,预处理/后处
Tag 是折行问题 → 用 Flex Wrap折叠是按行裁 → 用 constraintSize 限高 + clip 裁边展开/收起是状态驱动 → 用 animateTo 让 constraintSize 在"有限/无限"之间过渡别用 slice 假装裁行把它写成一个组件,props 只接和一个onPick,搜索框只管自己的事——这个搜索页就稳了。HarmonyOS 6 商城开发里,"裁得干净"往
本文探讨了如何将AI生成的文本内容高效转化为规范化的Word文档,解决排版与交付的"最后一公里"问题。文章指出,AI擅长生成语义内容但缺乏Word文档的结构化思维,导致用户需要花费大量时间修复格式。作者提出思路升级:让AI输出"Word操作指令"而非排版描述,并提供具体Prompt模板和典型应用场景(如技术方案、会议纪要等)。通过将内容生成与格式规范分离,用户只需按AI提供的样式指令简单操作,即可
OpenVINO™ C# API 3.3 正式发布!本次版本正式接入 OpenVINO GenAI,让 C#/.NET 项目可以直接调用本地 LLM、Whisper 语音识别和 VLM 图文问答能力。传统推理继续稳定支持,GenAI runtime 按需引入,覆盖 net46 到 net10.0,更适合桌面、工业、内网和边缘 AI 应用落地。
3. 输出过冲问题,从示波器看到,在设定电压时,会产生约10%的过冲,然后回到设定值,原因输出电压和模拟反馈之间有滞后,反馈环路滞后导致输出超调,在不改动硬件的情况下,通过软件修正该问题,每次设定电压时,不一次性给DAC,按照50%,80%,100%分段输出,得到平滑的输出响应。1.电源板输出继电器吸合时,ADC采样值会增大约15mV,原因在于继电器的线圈电流50mA,线圈通电吸合时抬高了ADC采
ArrayList是一个动态数组,相比普通数组支持自动扩容和灵活的元素操作。它提供添加元素的方法(Add/Insert/InsertRange)、删除元素的方法(Remove/RemoveAt/RemoveRange/Clear)以及排序查找功能(Sort/Reverse/IndexOf/Contains)。通过索引访问元素,并可通过Capacity和Count属性管理容量。虽然使用方便,但性能略
本文针对AI生成公式粘贴到Word出现乱码的问题,提出四大解决方案并进行横向对比。通过数据实证分析乱码成因,指出63%的直接粘贴会导致格式错误。四种方案中,Pandoc转换效果最佳但门槛高,WPS智能文档兼容性有限,调整AI提示词成功率仅58%。最终推荐"AI导出鸭"作为工程化解决方案,其采用结构化中间件技术,实现95%的格式保留率,操作仅需30秒且零学习成本。专家评价该工具填补了Word公式粘贴
每个方法做两件事:创建类型化容器 + 记录类型名// 容器: 存放 double 值// 类型名: 供 DataIn 做类型匹配// 容器: 存放 int[] 数组// 类型名: "int[]"调用顺序决定槽位索引DefineDoubleQueue() → 槽位[0] = List<double>DefineDoubleQueue() → 槽位[1] = List<double>DefineInt
“暂存 → 批量提交”:插件/脚本先调暂存到ExeModule执行时统一推入对应的 DataOut 队列,最后finally清空缓冲并WakeAll()唤醒等待者— 8 步:找 DataOut →加锁 → 边界校验(QueueIndex越界/负数)→ 逐项类型字符串比对 → 10 种类型分发 → 异常静默吞掉 →finally清空 +WakeAll— 不是泛型,而是字符串类型名("double""
本文探讨了工业4.0时代工厂数据采集面临的挑战,并提出基于C#的解决方案。当前工厂普遍存在设备协议碎片化(12个品牌、4种编程语言)、数据格式混乱(准确率<80%)、性能瓶颈(15秒延迟)和可靠性差(日均3台设备掉线)四大痛点。作者设计了一个七层架构的统一采集系统:通过协议适配层屏蔽设备差异,数据标准化层统一格式,异步引擎实现高并发采集(200+设备/100ms延迟),配合缓存层和配置中心。关键技
【摘要】国内技术社区中C#讨论热度下降引发"语言没落"质疑,但事实并非如此。C#热度降低源于四大假象:互联网赛道缺位、教学资源偏向、历史刻板印象及从业者低调属性。实际上,C#凭借Unity游戏开发垄断、工业/政企系统刚需及现代.NET生态的跨平台能力,稳居全球主流语言前五。其垂直领域(游戏、工控、金融)人才稀缺且薪资溢价明显,就业竞争压力远小于热门语言。建议学习者根据目标领域决
本文介绍了基于C#的.NET 10+ABP 10.3框架的实战开发经验,重点展示了一个分层架构的项目解决方案。文章采用"问题描述->项目展示->解决方案"的结构,涵盖了服务端命令行操作、数据库迁移管理、领域实体设计等内容。通过DbMigrator工具实现表结构重建和数据初始化,使用EF Core框架进行数据库CRUD操作,并附有TAX_0009表的创建迁移代码示例。该项目遵循ABP的分层DDD设计
本文介绍了在C#中使用继承机制实现代码复用时,如何管理数据库迁移以避免基类映射到数据库。通过定义基础Person类和继承的子类ChildPerson1、ChildPerson2,在DbContext中仅包含子类实体。通过配置IEntityTypeConfiguration控制子类属性映射,确保EF Core迁移时不会为基类生成数据库表。这种方法既实现了代码复用,又保持了数据库结构的清晰性,适用于需
本文介绍了工业自动化上位机中可视化流程引擎的开发方案,重点解决传统硬编码工序的痛点,提出了一套四层架构的工业级流程引擎设计。文章首先分析了传统方案的工艺固化、适配性差等弊端,阐述了流程引擎在工艺柔性配置和状态可视化方面的核心价值。随后详细设计了包含数据模型层、画布渲染层、流程调度层和节点业务层的整体架构,并提供了可序列化的流程节点、连线和画布数据模型的具体实现。最后展示了基于GDI+的画布控件基础
文章摘要 本文介绍了一个独立截屏工具的开发过程,旨在解决依赖微信等宿主应用带来的操作不便问题。工具采用.NET 10 + Avalonia + Skia技术栈,通过Win32 GDI实现屏幕抓取,支持多显示器与DPI缩放处理。关键技术点包括:1) 选择BitBlt而非DXGI/WGC方案以保证兼容性;2) 构建虚拟桌面模型统一处理多屏场景;3) 通过DPI三重映射确保坐标系统一致性;4) 采用Na