FastReport VCL 2025.2 在 Delphi 13 中的安装部署与避坑实践
简介一份面向Delphi 13Florence开发者的报表组件零售包集成FastReport VCL v2025.2用于快速完成报表设计、多数据源绑定、打印及导出。压缩包共2000个文件以1466个hpp头文件、210个dcu编译单元为主另含dfm窗体定义、res资源、bpl运行库及bpi/dcp包配置等覆盖源码接口、底层编译单元与可视化界面资源便于开发者按需查阅和二次扩展整体体积57.43MB可适配Delphi 13 IDE直接安装。目前已有590人学习下载。作为零售版包含完整功能与官方文档支持PDF、Excel、HTML等格式导出并保留跨平台开发能力开发者可结合Delphi 13的视觉编辑器、组件库更新及高性能数据库集成从简单报表到复杂数据分析均能灵活设计显著提升企业级报表应用的交付效率。1. 把 FastReport VCL 装进 Delphi 13 Florence这套报表控件到底帮你省了什么事做过 Delphi 项目的开发者大概都有过这种经历业务方要一张带分组、小计、条形码的销售明细表你打开 IDE 拖了个 TDBGrid预览时发现打印出来根本没法看。FastReport VCL v2025.2 就是冲着这个场景来的它是 Delphi 生态里使用率最高的报表控件几乎成了 Win32/Win64 桌面报表的事实标准。这份资源是 for Delphi 13 Florence 的 Retail 安装包解决了新版 IDE 刚发布时第三方控件适配滞后的痛点。适合正在用 Delphi 13 做进销存、ERP、医疗或工业上位机项目的团队想让报表模块从「能打出来」变成「能交付」的开发者。后面几章我会按选型、安装、首次出图、踩坑、进阶的顺序把整个落地过程拆开讲。2. 为什么选 FastReport VCL版本差异、控件栈与 2025.2 的更新点2.1 报表控件的选型逻辑FastReport 和 ReportBuilder、Rave 的差别Delphi 自带控件里能跟报表沾边的只有 TPrinter 和 TQuickRep 这类老古董真要画分组表头、自动分页、页脚统计工作量能写哭你。第三方报表控件里ReportBuilder、Rave Reports 和 FastReport 三足鼎立过很长一段时间但你去看现在的活跃度FastReport 几乎是一家独大。原因不外乎三点。第一FastReport 内置一个独立的报表设计器用户在运行期也能打开设计界面调整报表布局业务部门自己改格式不用每次找你重新编译。第二它的带区Band模型做得很直观页头、数据区、分组头、合计区是可视化拖动不是靠代码堆布局。第三导出格式覆盖了 PDF、Excel、Word、HTML、图片、XLSX基本能覆盖「客户要的是 Excel 原文件」这类需求。选 VCL 版本还是 FMX 版本这里要拎清楚。VCL 版只面向 Windows 桌面如果你的目标是 Win32/Win64 原生应用VCL 版是性能最好的选择FMX 版则偏跨平台移动端。这份资源标题里写清楚了是 VCL说明作者的目标平台就是 Windows 桌面。部署时要注意 VCL 版依赖本机 BPL 运行库打包发布时要把对应的运行期包带上后面第 5 章我会专门讲这个坑。2.2 Retail 版和 Source 版怎么选你拿到的是哪一类FastReport VCL 的发行包分两种Retail 和 Source。Retail 是不带完整源代码的编译版本安装后直接以 BPL 运行时包和设计时包的形式注册进 IDESource 版则附带全部 Delphi 源码适合需要深度定制引擎、改导出逻辑的团队。这份 v2025.2 Retail 包从名字就能判断出适用面日常报表开发完全够用你不需要去改 FastReport 内核。Retail 的好处是编译产物干净不用自己从头 build 一遍装完就能在组件面板里看到控件代价是你没法单步调试进它的源码遇到疑难问题只能靠日志和官方文档。我的建议是团队里只要有一个熟练工能看懂伪代码Retail 版就是性价比最高的选择只有当你明确要改 PDF 导出编码或自定义脚本引擎时才去考虑 Source 版。安装前你也可以先看看压缩包内的文件清单Retail 版通常包含FastReport 2025.2主目录、若干个DelphiXXX子目录对应不同 IDE 版本以及recompile批处理脚本。如果发现只有.bpl和.dcu而没有.pas那就是 Retail 没错反过来全是.pas的才是 Source 版。2.3 2025.2 版本解决了什么Delphi 13 适配与已知修正FastReport 的版本号从 2023 年起改成「年份.季度」的命名方式2025.2 就是 2025 年第二季度的对外发布版。这个版本对 Delphi 13 Florence 的适配是重点它解决了早期版本在新 IDE 上编译时报E2209 找不到 dcu的问题也修正了旧包在 Win64 平台下预览内存持续增长的一批 bug。版本号变化之外还要注意它对应的 Delphi 版本判定。FastReport 官方对不同 Delphi 版本分别放置了独立编译包比如Delphi12、Delphi13各自目录不能混用。你如果是通过社区版或试用版更新的 Delphi 13.1、13.2 通道同样认准 Delphi13 目录下的包即可。下面这张表可以帮你快速核对版本匹配关系包目录名对应 IDE适用 Win32适用 Win64Delphi12RAD Studio 12 Athens支持支持Delphi13RAD Studio 13 Florence支持支持其他版本旧目录旧 IDE需实测需实测用的时候千万反向确认一下不是把包拖进 IDE 就能用必须先确认 IDE 的 BDS 版本和包目录一致。装错目录最常见的翻车表现是编译时报File not found: frxClass.dcu后面避坑章会具体展开。3. 安装到 Delphi 13解压目录、包编译顺序与 IDE 注册3.1 安装前检查确认 IDE 版本和运行库路径动手之前先把自己的环境固化成可复现的清单别想到哪装到哪。我一般会先打开 Delphi 13 的Help About确认准确的版本号比如 13.0、13.1 或 13.2然后把 IDE 的库路径记录下来。库路径在Tools Options Delphi Options Library里默认一般指向C:\Users\用户名\Documents\Embarcadero\Studio\24.0之类的目录Delphi 13 的具体数字以你本机为准。同时确认两件事第一Delphi 13 的安装目录里是否已经有bpl输出目录比如C:\Program Files (x86)\Embarcadero\Studio\24.0\binFastReport 的 BPL 最终要能被 IDE 找到第二系统 PATH 环境变量里是否包含该目录这决定了设计器运行时能否加载依赖包。第二步容易被忽略很多人装完控件后 IDE 里看得到组件一拖到窗体上就报「无法定位程序输入点」多半就是 PATH 没配。FastReport 控件的核心设计期包也叫dclfrx系列装了之后组件面板会多出FastReport一页。如果你打开 IDE 找不到这一页问题基本出在 BPL 没有被真正加载而不是安装包没解压。3.2 编译与安装官方 recompile 脚本和手工双保险解压这份 Retail 包之后不要直接双击某个.dpk去编译那是新手最容易踩的坑。FastReport 的官方做法是运行包根目录下的 recompile 脚本它会按照依赖顺序逐个编译运行期包、设计期包并把生成的 BPL 拷贝到 IDE 的 BPL 输出目录。以常见场景为例脚本逻辑可以简化成下面这个模板实际以包内自带文件为准echo off rem rem FastReport VCL 2025.2 for Delphi 13 安装脚本 rem 请根据本机实际路径修改 FR_HOME 与 DELPHI_BIN rem set FR_HOMED:\FastReport_VCL_2025.2 set DELPHI_BINC:\Program Files (x86)\Embarcadero\Studio\24.0\bin cd /d %FR_HOME%\Delphi13 rem 先编译运行期包再编译设计期包 call dcc32 -B -JP frxClass.dpk call dcc32 -B -JP frxDCtrl.dpk call dcc32 -B -JP dclfrx.dpk rem 将生成的 BPL 拷入 IDE 目录确保 IDE 能加载 copy /y *.bpl %DELPHI_BIN%\ echo 编译完成请重启 Delphi 13 并检查 FastReport 组件页这段脚本的逻辑是-B表示全量重建避免旧的.dcu干扰-JP指定生成包类型.dpk编译产物是.bpl。frxClass是基础运行期包frxDCtrl是数据连接相关dclfrx是设计期包顺序不能颠倒否则后编译的包找不到前包的单元。copy /y那行是把手动拷贝逻辑也写进去省得你再去资源管理器里翻文件。如果你的 Delphi 13 是通过 GetIt 或社区版直接安装recompile 脚本可能因缺少dcc32命令行工具而报错。这时候不要硬磕命令行退回 IDE 手工路线打开Component Install Packages点击Add选中刚才编译生成的dclfrx250.bpl实际文件名以包内输出为准确认后 IDE 会立即加载设计期包。两条路线本质是同一套.dpk编译链只是入口不同。3.3 配置 Search Path把 DCU 目录加进 Delphi 的编译搜索路径BPL 安装成功只代表 IDE 能加载控件了真正编译你的项目时编译器还需要找到 FastReport 的.dcu文件。这一步很多人会漏掉结果就是新建项目、拖控件都没问题一按 F9 编译就报File not found: frxClass.dcu。打开Tools Options Delphi Options Library在Library path里追加 FastReport 的源码和 DCU 输出目录。Retail 版一般有Lib或Delphi13子目录存放已编译好的.dcu把该目录加进去即可。注意追加路径时用分号分隔不要覆盖原有的默认路径同时Debug DCU path如果留空建议也指向同一个目录避免调试时符号解析失败。我部署过的机器里最常见的问题是用户把路径配到了C:\FastReport\Delphi12而项目采用的是 Delphi 13 平台编译器按照搜索顺序找到了旧版.dcu结果运行时行为诡异。所以路径一定要精确到Delphi13子目录并且把 Win32 和 Win64 两种平台分别配置。IDE 左下角平台切换成 Win64 后Library path 里要能同时看到 32 位和 64 位的 DCU 目录FastReport 官方包通常把两种平台产物放在不同的Lib子目录下。配置完成后顺手做一次全量构建验证新建一个空白 VCL 工程往窗体上拖一个TfrxReport然后关闭窗体重开确认组件持久化没有问题。这步能提前暴露 BPL 加载异常不用等报表做了一半才发现基础环境是坏的。3.4 部署运行时目标机器要带哪些文件开发机跑通只是第一步交付给客户的机器上没有安装 Delphi IDEFastReport 报表能不能跑起来取决于你有没有把运行期 BPL 一起发布。常见做法是把你编译时生成的那几个frx*.bpl和dclfrx运行期依赖拷到 exe 同目录或者用 Inno Setup 安装到系统目录。这里有个容易翻车的点FastReport 的部分功能依赖额外的包比如导出 PDF 需要frxExportPDF.bpl导出 Excel 需要frxExportXLSX.bpl。你只拷了主包客户报表功能一般能打开但只要一点导出就报「无法创建 PDF 导出器」。稳妥的做法是发布时把 FastReport 安装目录Delphi13下生成的frxExport*.bpl全部随程序带上体积多出几 MB换来的是客户环境无感运行。这一点在项目交付时特别值得注意血泪经验告诉你别省这几 MB。4. 五分钟跑通第一张报表数据源绑定、设计器操作与预览导出4.1 控件落位与数据集准备TfrxReport、TfrxDBDataset 和 FDQuery 的配合环境装好后新建一个 VCL Forms 工程在窗体上放三个控件TfrxReport用于承载报表定义、TfrxDBDataset作为 FastReport 和数据集之间的桥接、TFDQuery负责从数据库取数。FastReport 不能直接识别TFDQuery或TTable必须先经过TfrxDBDataset包装这是很多新手第一次翻车的地方。procedure TForm1.FormCreate(Sender: TObject); begin // 配置数据库连接这里以 SQLite 本地库为例 FDConnection1.DriverName : SQLite; FDConnection1.Params.Values[Database] : D:\orders.db3; FDConnection1.Connected : True; // 准备数据查询订单明细按客户分组 FDQuery1.SQL.Text : SELECT Customer, OrderDate, ProductName, Amount FROM Orders ORDER BY Customer, OrderDate; FDQuery1.Open; // 把数据集桥接到 FastReport frxDBDataset1.DataSet : FDQuery1; frxDBDataset1.UserName : 订单明细; end;这段代码里frxDBDataset1.UserName很关键它是报表设计器里引用数据集的名称最好设为有意义的中文别名因为在设计器里绑定字段时你会直接看到这个名字。FDQuery1.Open必须在赋值给frxDBDataset1之前执行否则桥接时的元数据为空设计器里拖不出字段列表。常见的代替方案是用TFDMemTable做内存数据集适合数据量小、需要先在代码里加工再出报表的场景桥接方式完全一致。4.2 设计器里画报表Band 布局、字段拖放与分组统计双击窗体上的TfrxReport打开内置设计器这是 FastReport 的核心黑匣子但从建模角度看其实非常简单报表由若干 Band 组成每个 Band 控制一种内容区。常用的几种 Band 类型包括ReportTitle封面标题、MasterData数据循环区、GroupHeader分组头、MasterFooter数据区底部统计、PageFooter页脚。第一步在左边「数据树」里展开你刚才命名的订单明细数据集能看到所有字段。把Customer拖到GroupHeader带区把ProductName和Amount拖到MasterData带区。FastReport 的字段拖放会自动生成[订单明细.ProductName]形式的文本对象不需要手写语法这一步省下的工作量非常大。第二步做分组小计。在MasterData下面点右键添加MasterFooter然后在数据树底部找到「变量」分类里的Sum函数把它拖到这个带区。双击生成的对象把表达式改为Sum(订单明细.Amount, 订单明细.Customer)第二个参数表示按客户分组求和。FastReport 的Sum函数第一参数是计算表达式第二参数是分组依据不写第二个参数就是全表求和这两个表达式是 FastReport 脚本引擎的预定义函数不用额外引入单元。第三步加页脚页码。把「变量」里的Page和TotalPages拖到PageFooter系统会自动生成类似第 [Page] 页 / 共 [TotalPages] 页的文本保存并关闭设计器。4.3 代码里加载、准备与导出ShowReport 的参数含义设计器保存的.fr3文件在运行期加载通过代码控制预览和导出。FastReport 的PrepareReport方法和ShowReport方法是两个层次前者只准备报表数据不弹窗后者准备加弹预览。实际项目里导出 PDF 前一般只调用PrepareReport然后直接走导出组件避免预览窗体一闪而过。procedure TForm1.btnPreviewClick(Sender: TObject); begin // 从文件加载报表模板模板在开发期用设计器画好 frxReport1.LoadFromFile(D:\invoice.fr3); // 准备报表数据True 表示清空之前的缓存对象避免二次预览时内容重复 frxReport1.PrepareReport(True); // 弹出内置预览窗口 frxReport1.ShowPreparedReport; end; procedure TForm1.btnExportPDFClick(Sender: TObject); var PDFExport: TfrxPDFExport; begin frxReport1.LoadFromFile(D:\invoice.fr3); frxReport1.PrepareReport(True); PDFExport : TfrxPDFExport.Create(nil); try PDFExport.FileName : D:\output\invoice.pdf; PDFExport.ShowDialog : False; // 不弹导出选项框直接用默认参数 PDFExport.DefaultPath : D:\output; PDFExport.OpenAfterExport : False; frxReport1.Export(PDFExport); finally PDFExport.Free; end; end;PrepareReport(True)的参数是专家常说的ClearItems为 True 时会先清空上次准备留下的全部页对象再重新生成这个参数在循环导出多份报表时特别重要。如果你在同一个frxReport1实例上连续导两次第二次不传 True报表里会出现重复数据——那是上一次的缓存页没清掉。TfrxPDFExport的ShowDialog设为 False 后导出参数全部走代码默认值其中Compressed属性默认 False客户要求 PDF 体积小的话可以显式打开。4.4 报表引擎与数据集生命周期数据已经 Close 了还能跑吗实际项目里经常遇到一个疑惑报表预览正常但生成 PDF 时提示「数据集不存在」。原因是代码里FDQuery1.Open和报表导出之间隔了别的逻辑数据集被关闭或释放了。FastReport 的设计是PrepareReport阶段会遍历数据源取值并在内存中生成一份快照所以只要PrepareReport执行时数据集是打开的后续关闭数据集不会影响已经准备完的报表内容。反过来如果你用的是frxDBDataset1的运行时数据填充而没有先PrepareReport就直接导出导出器拿不到任何数据PDF 就是一张空表壳。记住一个顺序铁律先 Open 数据集再 PrepareReport最后 Export。任何一步颠倒都会导致空数据或报错。还有一点如果客户机器上是 64 位部署记得在 IDE 里确认当前目标平台是 Win64 再编译一遍不然开发环境一切正常发布到 64 位机器上报表插件加载失败黑屏问题排查起来非常费时间。5. 避坑手册FastReport VCL 在 Delphi 13 上的六个常见故障5.1 安装后组件面板没有 FastReport 页现象recompile 脚本执行完Component Install Packages里也点了 Add重启 IDE 后组件面板却没有新增FastReport页。原因最常见的是设计期 BPLdclfrx没有被 IDE 成功加载或者加载顺序与运行期包冲突。另一个隐蔽原因是 64 位 IDE 进程加载了 32 位 BPLDelphi 13 的 IDE 本身还是 32 位应用你手动编译时如果不小心用了 64 位平台的dcc64编译设计期包IDE 就会静默拒绝加载。解决打开Component Install Packages查找列表里是否有FastReport如果有但前面是灰色先移除再重新 Add选择Delphi13目录下明确标注Win32的.bpl。没有显示就检查编译日志确认dclfrx是否成功生成重新编译一次再把 BPL 拷进 IDE 的bin目录重启 Delphi。5.2 拖 TfrxReport 到窗体时报「无法定位程序输入点」现象控件面板能看到 TfrxReport但拖到窗体上一瞬间 IDE 弹窗报错窗体设计器被打回原形。原因BPL 文件存在但 DLL 依赖链断裂。FastReport 的设计期包依赖运行期包如果你只拷贝了dclfrx250.bpl而没拷贝frxClass250.bplIDE 加载设计期包时找不到符号入口。解决不要在bin目录里只塞设计期 BPL把Delphi13目录下编译产物里的所有frx*.bpl全部拷贝过去。如果还报错用Dependency Walker或Process Explorer看一下缺失的 DLL 名称然后到 FastReport 的安装目录里搜索同名文件补进系统路径。5.3 报表字段全是空白的「幽灵数据」现象设计器里能拖出字段预览时 Band 结构正常显示但所有文本对象都是空白没有任何数据行。原因frxDBDataset1的数据集没有在正确的时机打开。FastReport 在PrepareReport时会向数据集请求元数据如果当时数据集是关闭状态它已经把数据集视为「空元数据」并生成空表结构之后你再Open也晚了。解决严格执行先Open后PrepareReport的顺序。还有个常见替代方案是干脆不用外部数据集而是用TfrxUserDataSet在脚本里逐行填数据适合运行期动态拼数的报表。用TfrxUserDataSet时要在设计器里为每个字段写OnGetValue脚本复杂度略高但避免了数据集的存活期管理。5.4 导出的 PDF 中文文字变成方框现象预览正常导出 PDF 后中文全部变成空方框或问号英文数字正常。原因PDF 导出默认参数没有嵌入 TrueType 字体或者客户机器上缺少报表里用的中文字体。FastReport 的 PDF 导出器为了减小文件体积默认使用标准 PDF 字体映射中文字符无法用标准字体表达。解决在导出参数里显式打开字体嵌入。代码方式是在TfrxPDFExport上设置EmbeddingFonts : True同时把FontFolder指向系统中文字体目录比如C:\Windows\Fonts。报表设计器里也要检查文本对象字体是否为「宋体」或「微软雅黑」不要用默认的 Arial。注意EmbeddingFonts打开后导出 PDF 体积会明显增大这是正常现象不必担心。5.5 64 位编译时频繁报 dcu 版本不匹配现象Win32 平台编译一切正常切到 Win64 后大量报错DCU 版本不匹配定位到frxClass.dcu。原因Retail 包里 32 位和 64 位的.dcu分放在不同子目录你的 Library path 里配的是 32 位目录。Delphi 切换平台后依然沿用该路径编译器用 32 位 DCU 去喂 64 位工程必然翻车。解决在Library path里同时保留两段路径用分号分隔切换到 Win64 平台后确认搜索顺序中 64 位 DCU 目录排在 32 位之前。重新编译前先执行一次Project Clean把旧的生成文件清掉。RIO 之后各版本对平台敏感度更高这个路径问题几乎成为升级 Delphi 必踩的坑。5.6 报表导出 Excel 后数字变成文本现象FastReport 导出 XLSX 后金额列虽然显示正确但 Excel 里是文本格式无法直接求和。原因TfrxXLSXExport默认把单元格按「文本」类型输出只有表达式计算结果的单元格会保留数值类型。如果你是在文本对象里拼了格式化字符串比如FormatFloat(#,##0.00, Amount)导出后必然变文本。解决要么在导出前给TfrxXLSXExport设置Continuous : False并按真实字段类型导出要么在 Excel 模板里重新定义单元格格式。更稳妥的方案是报表里的金额对象不设 DisplayFormat直接用原始字段导出让格式在 Excel 端处理。这条在财务场景里是刚需客户拿到的 Excel 不能求和这个锅通常都得由开发者背。6. 进阶用法脚本事件做动态逻辑、自定义导出参数与性能习惯FastReport 真正的区别化优势在于自带 Pascal 脚本引擎你可以在报表设计器里写事件脚本而不必把所有逻辑堆在 Delphi 代码里。最常用的场景是动态隐藏空白行明细数据很多行为空不想在打印时露出大片空白就在MasterData的OnBeforePrint事件里写一段脚本procedure MasterData1OnBeforePrint(Sender: TfrxComponent); begin if 订单明细.ProductName then MasterData1.Visible : False else MasterData1.Visible : True; end;这段脚本的Visible : False会把当前数据行整行隐藏但注意它不会影响数据集的游标推进下一条记录仍然会进入该事件所以空行之间不会粘连。脚本在OnBeforePrint里改 Visible 是 FastReport 官方支持的动态控制方式比用「抑制重复行」选项更灵活。如果你对 Pascal Script 不熟也可以在 Delphi 代码里给frxReport1挂OnBeforePrint事件效果等价只是每次改逻辑都要编译主程序项目后期维护成本高不少。导出参数这块值得专门调整的是 PDF/A 合规性。很多政务、医院项目要求档案级 PDFAdobe Acrobat 里能过预检。FastReport 的TfrxPDFExport没有直接暴露 PDF/A 开关但你可以在准备报表前调用frxReport1.PrepareReport后手动设置导出器的Compliance属性常见写法是PDFExport.Compliance : TfrxPDFCompliance.fcPDFA1b; PDFExport.EmbeddingFonts : True;fcPDFA1b是 PDF/A-1b 级标准要求字体全部嵌入所以EmbeddingFonts必须同步设为 True。设完这两项后导出的文件可以直接送第三方检测工具做合规校验。注意有些字体本身不允许嵌入比如部分商用字体换成微软雅黑或思源黑体一般能过。最后聊一个我在项目里反复踩的性能习惯。FastReport 预览出现卡顿大多数情况不是引擎慢而是你把整个报表的明细数据全加载进来才PrepareReport。常见做法是在 SQL 查询阶段就做分页条件比如只取当前月份的数据或者用TfrxReport.PrepareReport(True)后立刻Dispose掉数据集连接释放数据库游标。FastReport 内存占用大头是页对象一万行明细大概要 50MB 左右如果报表做到十万行级别别指望一个控件扛到底和业务方商量按页异步加载才是正道。从 Delphi 7 一路用到 Delphi 13FastReport 是我见过兼容性最稳的第三方控件之一但每次升级 IDE 我还是会强制走一遍完整流程查版本匹配 → recompile → 验证设计器 → 测试 32/64 位双平台 → 打包部署机试跑。这套流程看着繁琐实际上每步都能提前暴露问题省掉的都是上线当天的深夜排障时间。希望这篇拆解能让你绕开那些我已经替你们蹚过的坑顺利把报表模块交付出去。本文还有配套的精品资源点击获取

相关新闻

SSM+Vue毕设项目实战:颜值评分管理系统设计与部署全解析

SSM+Vue毕设项目实战:颜值评分管理系统设计与部署全解析

1. 项目定位与技术选型分析“美了吗颜值管理中心”这个名字听起来有点娱乐向,但本质上一个典型的 Java Web 后台管理系统,技术栈选了 SSM Vue 这对经典组合。我做毕设辅导这些年,见过太多人选了花里胡哨的技术栈最后把自己坑惨的案例&#x…

2026/10/9 4:08:34 阅读更多 →
Python迭代协议全解:从for循环到async for的底层逻辑

Python迭代协议全解:从for循环到async for的底层逻辑

先抛一个问题:你写了这么久的 Python,有没有想过for x in obj:这行代码到底在背后干了什么?我自己第一次认真琢磨这件事,是在排查一个诡异的线上 bug 时——一个看起来人畜无害的 for 循环,竟然把一个 16G 内存的机器跑…

2026/10/9 4:08:34 阅读更多 →
改进粒子群算法实现多无人机协同航迹规划的Matlab实践

改进粒子群算法实现多无人机协同航迹规划的Matlab实践

多无人机协同航迹规划,拆开看是“航迹规划”,合起来难就难在“协同”两个字。单架无人机用A*、RRT或者标准粒子群都能跑出路径,但是一旦要求多架无人机同时出发、同时到达、互不碰撞、还要整体代价最小,问题就变成了一个多目标、强…

2026/10/9 4:08:34 阅读更多 →

最新新闻

oneTBB concurrent_hash_map 非成员二元比较运算符(operator== / operator!=)详解

oneTBB concurrent_hash_map 非成员二元比较运算符(operator== / operator!=)详解

并发编程高性能计算 【免费下载链接】oneTBB oneAPI Threading Building Blocks (oneTBB) 项目地址: https://gitcode.com/gh_mirrors/on/oneTBB 点击查看 免费下载 导读 本文聚焦 oneAPI Threading Building Blocks(oneTBB)中 oneapi::tbb…

2026/10/9 4:49:04 阅读更多 →
Claude Code 命令速查手册:高频命令、快捷键与高效工作流

Claude Code 命令速查手册:高频命令、快捷键与高效工作流

1. 为什么需要一个命令速查手册刚接触 Claude Code 的人,十有八九会经历这么一个阶段:装好了,敲了个claude进去,然后对着那个闪烁的光标发呆——接下来该干嘛?官方文档当然有,但文档是线性的,从…

2026/10/9 4:49:04 阅读更多 →
ESP32 SoC与模组选型指南:从芯片架构到量产料号

ESP32 SoC与模组选型指南:从芯片架构到量产料号

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 4:49:04 阅读更多 →
Claude Code Mods扩展开发:工具挂载与终端界面渲染实战

Claude Code Mods扩展开发:工具挂载与终端界面渲染实战

1. 从终端里的AI助手说起:为什么需要给它加装工具和界面很多人第一次接触命令行里的AI编程助手时,感受往往是矛盾的。一方面,它能理解自然语言、能读写文件、能执行命令,确实比传统补全工具强出一大截;另一方面&#x…

2026/10/9 4:49:03 阅读更多 →
SSM框架2025年真实处境与Spring Boot渐进式迁移实战

SSM框架2025年真实处境与Spring Boot渐进式迁移实战

直接开写 说实话,每次在技术群里看到有人问“SSM框架还能打吗”,我就知道问这问题的十有八九是两种人:一种是刚接手了祖传项目、天天被XML配置折磨得想跑路的年轻开发,另一种是还在用SSM做老系统维护、看着外面的技术新闻越来越焦…

2026/10/9 4:49:03 阅读更多 →
LRE框架:重构AI智能体的时间感知与因果记忆机制

LRE框架:重构AI智能体的时间感知与因果记忆机制

1. 这不是“给AI加个备忘录”,而是重构智能体的时间感知能力很多人第一次看到“AI智能体记忆管理”这个词,下意识会想:不就是让大模型多存点上下文、加个向量数据库当外挂硬盘吗?我试过——在某个模拟项目X里,给一个任…

2026/10/9 4:48:03 阅读更多 →

日新闻

Java时间API实战:LocalDate、Date与ZonedDateTime的转换与避坑指南

Java时间API实战:LocalDate、Date与ZonedDateTime的转换与避坑指南

Java时间API这个话题,隔三差五就会在群里被翻出来讨论一次。上周还有个同事线上处理一个订单超时问题,排查到最后发现是ZonedDateTime序列化后时区丢了,用户在下单当天晚上看到的时间整整差了8个小时。这类问题几乎每个做Java开发的人都遇到过…

2026/10/9 0:00:49 阅读更多 →
EasyTier实践:从NAT穿透到子网代理的异地组网部署与排错

EasyTier实践:从NAT穿透到子网代理的异地组网部署与排错

前几个月我手头有好几台机器需要互相访问:办公室台式机、家里 NAS、还有一台云主机。如果只是偶尔传个文件倒还好,问题是工作场景经常要在几处环境之间来回切换,每次都先登录跳板机再层层代理,实在折腾。我先后试过端口映射、自建…

2026/10/9 0:00:49 阅读更多 →
AI Agent工程实战:从七要素到七个决策点的系统设计指南

AI Agent工程实战:从七要素到七个决策点的系统设计指南

AI Agent 这个词在过去一年里被反复提及,但真正动手搭过一套能跑起来的 Agent 系统的人都知道,从"知道它是什么"到"让它稳定干活"之间隔着一整套工程决策。我前后参与过几个 Agent 项目的落地,从最初用现成框架拼装&…

2026/10/9 0:01:50 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 15:26:32 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 15:26:40 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 10:10:36 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 21:13:17 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 15:26:17 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/7 13:34:55 阅读更多 →