
C++
tumin999
这个作者很懒,什么都没留下…
展开
-
一次很酷的GDB附加到进程改变程序运行逻辑的经历
一次生产环境通过gdb调试器修改程序执行流程的经历原创 2024-10-29 09:57:15 · 200 阅读 · 0 评论 -
超融合平台中折腾linux(ubuntu/centos)虚拟机
修改ipsudo vi /etc/netplan/00-installler-config.yaml重启系统 reboot 修改时间参考ubuntu server设置时区和更新时间_rayylee-优快云博客,发现是执行后date显示时间为本地时间:sudo cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 安装相应开发负载,参考studio cmake开发指导文档。 sudo apt-get inst原创 2022-02-08 11:27:23 · 1342 阅读 · 0 评论 -
vs2019开发wsl2下的linux程序
WSL2环境准备,参考:https://zhuanlan.zhihu.com/p/166196630 开发wsl2下的程序,有两种方式:一种是cmake方式,可以直接选择"wsl gcc";一种是remote linux方式; cmake方式 参考:https://devblogs.microsoft.com/cppblog/c-with-visual-studio-2019-and-windows-subsystem-for-linux-wsl/ “C++ with Visual Studio 201原创 2020-12-16 15:55:11 · 1287 阅读 · 0 评论 -
python unpack关于字节对齐的一个细节
目前通过c++程序生成的文件,需要python读取出数据。但发现直接按字段类型读取,会提示指定buf长度与格式串不匹配,需要xx字节。其中一个结构体的格式串为:'c31sidqciqqqiii'。这个结构体可以正常读出。 >>> struct.calcsize('c31sidqcciiiii')80 第二个结构体格式串为'c31sidqciqqqiii'。这个结构体计算需要100字节,实际c++程序中显示sizeof()是104字节。根据python文档描述,说..原创 2020-10-20 17:15:36 · 865 阅读 · 0 评论 -
windows多媒体定时器研究
最近实际工作中有一个业务需求要求1ms精度的一个定时操作,因之前这一块领域很少接触,有些文章也对多媒体定时器有描述,我结合自己的需求写了一个简单demo,以备产品代码中使用。// MultimediaTimersDemo.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//#include <iostream>#include <wind...原创 2020-04-29 14:05:30 · 871 阅读 · 0 评论 -
一个WindowFileMapping的实验记录
#include <Windows.h>#include <iostream>#include <string>void test_file_mapping_writer() { std::string szPath{ "e:\\temp\\md.1.bin" }; HANDLE h_dump_file = ::CreateFileA( sz...原创 2020-02-28 20:11:49 · 223 阅读 · 0 评论 -
在windows上开发linux程序
1. 概述 由于工作需要,希望能把现有代码移植到linux。基于此目的,最近做了些调研和实验。 由于自己并没有太多的linux下的工作经验,所以不考虑直接在linux平台下工作,开发。 好在现在VSCode,VisualStudio目前都支持跨平台开发。 VSCode有一套remote-xxx的扩展,可以在本机linux子系统,远程主机,远程容器上开发。但平...原创 2019-08-30 16:36:03 · 4675 阅读 · 0 评论 -
一个std::map和std::unordered_map的以char *作为key的例子
// std_map_key_string_demo.cpp: 定义控制台应用程序的入口点。//#include "stdafx.h"#include <string>#include <unordered_map>#include <map>#include <type_traits>#include <cassert>struct h...原创 2018-03-12 10:22:42 · 1247 阅读 · 0 评论 -
c++ std方案的OrderedDict
问题的本质是需要一个能保持插入顺序的map,既能保持插入map的顺序,又能高效的索引、查找、删除。stackoverflow上的讨论:A std::map that keep track of the order of insertion?其中这个答案应该是我想要的:具体代码在https://github.com/Tessil/ordered-map。原创 2018-01-11 09:51:47 · 1316 阅读 · 0 评论 -
在MFC MDI程序中屏蔽掉菜单栏
一种在MFC程序中不显示主菜单的方法。原创 2016-06-30 15:50:10 · 2232 阅读 · 0 评论 -
ZeroMQ的ZMQ_STREAM模式写的服务器反向先发请求的示例代码
bool has_more(void* socket){ int more = 0; size_t more_size = sizeof(more); int rc = zmq_getsockopt(socket, ZMQ_RCVMORE, &more, &more_size); if (rc != 0) return false; return more != 0;}#in原创 2016-05-18 12:47:57 · 4570 阅读 · 3 评论 -
一种std::string的格式化方法
一种std::string的格式化方法原创 2016-03-03 17:00:41 · 27418 阅读 · 3 评论 -
跨进程遍历目标进程中树形控件的例子源码
在一个特定场景下,需要读取目标进程中树形控件中各个HTREEITEM的文字信息和区域信息,在查找一些资料后调试成功!void CSysTreeView32_DemoDlg::OnBnClickedBtnTvmGetitem(){ TCHAR dbgInfo[128]; //用于OutputDebugString() // hWnd是另外一个进程中的SysTreeview32控件的窗口原创 2015-03-27 00:01:01 · 1647 阅读 · 1 评论 -
windows系统通知区域编程(SystemTray or NotificationIcon)
最近有个VC程序急切希望具有windows 通知区域图标的功能,从优快云上参考了几篇文章,但改的效果并不是很理想,于是自己开始思考此问题,并找到源自MS的例子源码。 在MSDN中查找Shell_NotifyIcon,可以看到有个例子连接http://technet.microsoft.com/zh-cn/office/dd940367,但该页面上提示的代码下载链接已不能使用,于是考虑下原创 2014-12-03 11:21:34 · 2086 阅读 · 0 评论 -
一种MFC误报动态库中内存泄露的处理方法
关于MFC误报动态库中的内存泄露,在这篇文章中有比较详细的解释:关于DLL工程中存在全局变量可能导致MFC内存泄露误报的原因分析及解决办法。认为这种原因是因为MFC的dll早于调用的dll卸载,在MFC的dll泄露时会打印出当前尚未释放的内存,认为这些内存泄露,但事实上当后来真正卸载调用动态库时是正确做了内存清理的。因此文章中认为这个问题是隐式的动态库卸载顺序造成的。解决办法是重新配置调用的dll原创 2013-03-29 11:53:07 · 1526 阅读 · 1 评论