- 博客(241)
- 资源 (7)
- 收藏
- 关注
原创 数据库中对增改删没有及时submit的 取消其控制权限
此方案通过自动回收权限而非直接终止会话,既解决了资源占用问题,又避免了数据不一致风险。实现自动取消未及时提交的DML操作控制权限。方案2:使用SQL Agent作业定期检查。审计跟踪:所有自动权限变更必须详细记录。通知机制:权限回收时应通知用户和管理员。测试环境验证:在生产环境实施前充分测试。方案1:使用DDL触发器与权限回收。性能影响:频繁权限变更可能影响性能。白名单:排除关键服务账户。方案3:应用程序层控制。
2025-04-08 12:32:56
303
原创 配置SSMS 让数据库中会话时长大于30秒的自动终止
在SQL Server Management Studio (SSMS)中,没有内置的直接设置可以自动终止长时间运行的会话。打开SSMS → SQL Server Agent → 作业 → 新建作业。方法3:使用资源调控器(SQL Server Enterprise版)方法1:使用SQL Server Agent作业定期检查并终止。方法4:使用扩展事件(XEvents)监控并触发操作。添加步骤,类型选择"Transact-SQL脚本"配置SSMS自动终止长时间运行的会话(>30秒)
2025-04-08 12:30:45
195
原创 数字化计算机语言特性对比
GUI 流畅度:Qt 6.9(硬件加速)> C# (WPF) > MFC > Java (JavaFX) > Python (PyQt/Tkinter)GUI 开发便捷度:C# (WPF) ≈ Qt (QML) > Python (PyQt) > Java (JavaFX) > MFC。最佳跨平台:Qt 6.9 > Java ≈ Python > C# > MFC(仅 Windows)最高性能:MFC ≈ Qt 6.9(C++)> C# > Java > Python。
2025-03-31 13:24:06
178
原创 MATLAB 编写的函数或算法生成可供 C++ 调用的库或组件
配置编译器: 在 MATLAB 命令窗口中,输入 mex -setup,选择适用于您 MATLAB 版本的支持的 C++ 编译器。添加生成的库和头文件: 将 MATLAB 生成的库文件(如 .lib、.dll)和头文件(.h)添加到您的 VS2022 项目中。包含头文件路径: 右键点击项目,选择“属性”,在“C/C++”的“常规”部分,将生成的头文件所在的文件夹添加到“附加包含目录”。准备 MATLAB 代码: 确保您的 MATLAB 函数符合代码生成的要求,避免使用不支持的函数或特性。
2025-03-26 16:50:52
782
原创 C++代码优化算法的效率详细对比
在 C++20 编译器中,除了 -O2 优化选项外,还有其他优化级别可供选择,包括 -O0、-O1、-O3 和 -Os。需要注意的是,过度优化可能导致调试困难和代码行为变化,因此在选择优化级别时,应根据具体应用场景和需求进行权衡。描述: 在 -O2 的基础上,进行优化以减少可执行文件的体积,可能会牺牲一些执行效率。一般优化: 使用 -O2,在编译时间和执行效率之间取得平衡,适用于大多数应用。描述: 在 -O1 的基础上,启用更多优化选项,进一步提高代码执行效率。生成的可执行文件体积可能增大。
2025-03-26 16:43:44
20
原创 Qt中10倍提升动态截屏及渲染60帧/秒
代码会暂停在打开模态窗口的位置,等待窗口关闭后才继续执行后续逻辑。通过上述方法,可确保非模态子窗口的内容被正确捕获并合成到主截图中。窗口可见性检查:通过IsWindowVisible过滤隐藏窗口。主线程捕获全屏帧,子线程处理坐标计算和图像裁剪,减少单帧延迟。通过目标窗口及其子窗口的屏幕坐标,从全屏帧中提取所需内容。需要持续交互的辅助窗口(如工具面板、实时预览窗口等)。坐标转换:确保子窗口位置相对于主窗口正确偏移。性能优化:若窗口频繁更新,考虑缓存或增量截图。窗口打开后代码继续执行,不等待窗口关闭。
2025-03-25 08:29:25
762
原创 QTableModel QTableView QTableWidget 详细对比
QTableView 适合复杂的表格数据展示,支持自定义视图,滚动、排序和编辑等功能。在 Qt 中,QTableModel、QTableView 和 QTableWidget 都涉及到表格控件的实现,但它们的使用场景和功能有所不同。使用场景:适用于数据量较小,且不需要复杂数据操作的情况。对于简单的表格展示,QTableWidget 是一个方便的选择,因为它省去了自定义模型的复杂性。QTableView 与 QTableModel 配合使用,适用于更复杂和动态的数据展示需求,支持更高的定制性和灵活性。
2025-02-14 10:43:19
873
原创 C++20 多线程机制
std::jthread:自动管理线程生命周期,支持停止令牌。停止令牌:提供了一种优雅的线程停止机制。std::latch 和 std::barrier:用于线程同步。std::counting_semaphore:用于控制资源访问。std::atomic_ref:允许对非原子对象进行原子操作。C++20 的多线程特性使得并发编程更加安全和高效,建议在实际项目中充分利用这些新特性。
2025-02-13 11:19:22
108
原创 数据库存储过程和QT数据库访问并获取返回值的几种方式
在 Qt 中使用 QSqlQuery 执行存储过程时,如果存储过程有 RETURN 值,但执行成功后没有返回任何结果,这通常是因为存储过程的 RETURN 值并不会像 SELECT 查询那样作为数据集返回。QSqlQuery::exec() 只能执行 SQL 查询,返回的是查询结果集:如果存储过程包含 RETURN 值而没有 SELECT 语句,Qt 的 QSqlQuery::exec() 只会执行存储过程,但不会捕获 RETURN 值。存储过程的执行成功与否并不等同于它返回的结果集。
2025-01-21 10:17:54
1036
原创 QT 占位符的用法
QString(“Elapsedtime:%1seconds”).arg(elapsed_seconds.count())的作用是动态生成字符串,按顺序用arg()的参数替换字符串中的占位符%1。%1以数字表示,占位符可以有多个,例如%1、%2、%3等,分别对应arg()函数中的第一个、第二个、第三个参数。count()是std::chrono::duration的方法,用于获取该时间间隔的数值。arg()是QString的成员函数,用于替换占位符%1,%2等。
2025-01-20 15:29:39
658
原创 Qt 自动根据编译的dll或exe 将相关dll文件复制到目标文件夹
通过将 Qt 安装目录下的 bin 文件夹路径添加到 Path 环境变量中,或者直接在 Qt bin 目录中运行 windeployqt,就可以解决这个问题。如果你在使用 windeployqt 时遇到错误 “windeployqt 不是内部或外部命令”,说明你的命令行环境没有正确配置 Qt 工具路径。windeployqt 是 Qt 工具的一部分,它用于自动将所有必要的 Qt 库和插件复制到你的应用程序目录中。这样会确保正确找到 windeployqt 工具并运行。
2025-01-14 09:11:43
341
原创 VS2022 项目文件批量转UTF8(WIN11 24H2验证有效)
如果在使用 PowerShell 脚本转换文件编码后,文件中的中文出现乱码,可能是因为文件在读取时没有正确地识别原始编码,导致中文字符在转换过程中丢失或变成乱码。可能的原因:1. 原始文件编码不明确:如果文件是使用 GBK 或 GB2312 编码(常见于简体中文环境下的文件),而 PowerShell 默认按 UTF-8 编码读取文件,那么中文字符会被错误地解析。2. 没有正确地处理 BOM:在处理编码时,缺少字节顺序标记(BOM)可能会导致某些工具和程序无法正确识别文件编码。
2025-01-09 14:49:13
645
原创 QT升级及下载缓慢的问题解决办法
和前面安装类似 但是升级对应的对象使用的不是 qt-online-installer-windows-x64-4.8.1.exe 而是安装目录下面的 MaintenanceTool.exe 操作和前面方法一致。以上即可解决安装慢合升级慢的问题!
2025-01-09 14:05:32
1184
1
原创 C++ 20 中 vector list stack queue 分别从功能 效率等全方面分析其差异
综合来看,不同容器适用于不同场景,应根据需求选择最合适的容器,以优化性能和代码可读性。适用场景:适合任务调度、消息队列等 FIFO 应用场景。优势:支持随机访问、内存连续、缓存友好、尾部插入高效。优势:语义清晰,操作简单,后进先出(LIFO)模式。优势:语义清晰,操作简单,先进先出(FIFO)模式。适用场景:需要随机访问、内存紧凑、高效遍历的场景。劣势:内存利用率低,遍历性能差,随机访问不支持。优势:中间插入和删除效率高,支持双向遍历。适用场景:需要频繁在中间插入和删除的场景。
2024-11-21 10:25:28
199
原创 SQLITE 构建多表查询
如果你有具体的查询需求,可以提供更多的细节,我可以帮你构建更精准的查询。在SQLite中,构建多表查询时,最常用的方式是使用 JOIN 操作符来连接多个表。SQLite不支持 RIGHT JOIN,但你可以通过调换表的位置并使用 LEFT JOIN 来实现相同的效果。这个查询会返回所有学生及其课程,即使某些学生没有选课(没有匹配到课程表中的数据)。CROSS JOIN 返回两个表的笛卡尔积,即每个表中的所有记录的组合。这个查询返回所有学生及其所选课程,前提是学生和课程在各自的表中都存在。
2024-10-05 12:44:30
770
原创 PlantSimulation超高速将Table数据导出到Excel
【代码】PlantSimulation超高速将Table数据导出到Excel。
2024-08-30 14:54:40
302
原创 工厂仿真模型处理 Delmia 配置方法
工厂仿真模型处理 Delmia 配置方法文件安装地址安装完成后配置软件设置【配置为锐锋内部 已经调配好的其他人员没有该项操作!!!】
2024-08-13 14:13:39
378
原创 cmake和Make的安装及配置
安装 make 工具的步骤取决于你使用的操作系统。以下是不同操作系统上安装 make 工具的指南:在 Linux 上安装 make对于大多数 Linux 发行版,可以使用包管理器来安装 make。以下是一些常见的 Linux 发行版的安装命令:sh复制代码build-essential 包含了 make 和其他常见的编译工具,如 gcc。sh复制代码或sh复制代码Fedorash复制代码或sh复制代码在 macOS 上安装 make。
2024-06-22 13:51:20
649
原创 关于高版本 Plant Simulation 每次保存是 提示提交comm对话框的处理方法
如下图 将model saving history 修改为None即可。
2024-06-02 21:42:27
324
原创 如何自己搭建一个简单的web api 环境 主流语言C# 编译器推荐VS2022
你可以根据需要扩展此API,添加更多控制器和方法,实现更复杂的业务逻辑。ASP.NET Core提供了强大的功能和灵活性,适用于各种规模的Web API开发。搭建一个简单的Web API环境,可以使用C#和Visual Studio 2022来实现。访问https://localhost:5001/swagger,你会看到Swagger UI界面,可以通过它来测试你的API。选择“API控制器 - 带动作,使用Entity Framework”,点击“添加”。4. 创建一个简单的API控制器。
2024-05-22 15:33:42
994
原创 Web API 实现方式主流平台
主流平台如Node.js、Spring Boot、Django、ASP.NET Core和Ruby on Rails提供了丰富的工具和框架支持,帮助开发者高效构建和部署API。实际案例如Twitter API、Google Maps API、GitHub API、Stripe API和Amazon S3 API展示了Web API在各个领域的广泛应用和重要性。Web API 的实现方式和主流平台多种多样,每种方式和平台都有其独特的特性和应用场景。应用: 企业级应用,RESTful和SOAP API。
2024-05-22 15:30:20
892
原创 用于与 HTTP 服务器通信的函数
将对在不更改结构的情况下不允许用于 URL 的所有字母进行掩蔽。将指定数据从 Base64 编码解码为原始状态,对传递的 Base64 编码文本中的二进制数据进行转换。decodeQuotedPrintableString 函数取消掩蔽由引用的可打印编码掩蔽的所有字母,将其转换为原始形式的传递文本。对引用的可打印编码中传递的字符串进行编码,其中将掩蔽不允许在 URL 中使用的所有字母,而不更改其结构。字符串数据类型的 FileName 参数用于指定要将解码后的数据保存到其中的文件的名称。
2024-05-21 13:24:40
966
原创 Mixer类的应用
注意 当您在混合器材料表的“产品数量”列中为配方输入 -1 时,工厂模拟假定所有成分的总和作为“产品数量”。当您在混合器材料表的产品数量列中输入配方的 -1 时,工厂模拟假定所有成分的总和作为产品数量。假设您连接了两个管道,然后指定的流出速率流经这些管道中的每一个,以防所连接管道的流出速率允许这样做。混合过程后,添加指定的量并指定的材料取代当前现有的产品。注意 当产品数量与您在材料表中输入的产品数量不同时,Plant Molding 会相应调整各个成分的数量,以确保保留成分的比例。
2024-05-10 10:00:44
600
原创 工厂仿真关闭死循环监测的方法【千万慎重否则就剩下结束进程了连保存的机会都没有了】
函数 setInfiniteLoopDetectionTimeout 可设置方法执行可能需要的秒数,在此之后 Plant Simulation 会打开对话框,提示您可以按 Shift+Alt+Ctrl 停止方法执行。数据类型为整数的参数 Timeout 指定超时的秒数。设置为 0 或负值将完全停用无限循环检测。否则,允许的最小值为 3 秒。返回值为数据类型为整数。
2024-05-09 09:43:14
240
原创 Tecnomatix Plant Simulation 自定义右击菜单设置
【代码】Tecnomatix Plant Simulation 自定义右击菜单设置。
2023-12-25 15:16:37
949
原创 PlantSimulation安装帮助文档端口被占用的解决办法
从PlantSimulaiton(TPS)2201开始帮助文档开始使用在线,如果使用本地则需要安装本地文档服务器。但是在安装过程中你可能会遇到,5000断开被占用的情况。得到的结果如下,确认进程是否是某程序进程如果不是则直接选中右击终止,这个时候就可以顺利安装了!,如果是的话 换个断开就可以了!输入指令 netstat -ano|findstr 5000 得到如下结果。在下图2位置输入 3中 标识2得到的PID号。使用Win+R调出CMD界面。打开任务管理器 如下图。
2023-11-03 13:00:57
636
原创 关于C#中使用多线程的讨论
如果你想在一个新的线程中调用一个带返回值但没有输入参数的函数,可以使用 Thread 类的委托 ThreadStart 来创建一个新的线程,并在其中调用该函数。抱歉,我之前的回答有误。在上面的示例中,我们使用匿名方法来创建一个新的线程,并在其中调用 MyFunction 函数。注意,Join 方法返回的是一个 object 类型的值,你需要将其转换为正确的类型,以便在程序中使用。注意,Join 方法返回的是一个 object 类型的值,你需要将其转换为正确的类型,以便在程序中使用。
2023-10-31 10:48:04
180
SM-Bluetooth
2023-05-10
PortHelper.exe
2023-05-10
C++ DLL反汇编&C# Dll反汇编工具
2022-09-27
PlantSimulation中文帮助文档
2022-06-25
AUTOCAD 2004/AUTOCAD 2008 条形码CODE128生成
2017-12-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人