自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 Windows开发:以管理员权限运行

默认的应用程序是无管理员权限的,开发中设置应用程序需要管理员权限运行时,启动应用程序会弹出"以管理员身份"运行的提示。这种情况对需要开机自启动的程序来说,弹出该提示是不友好的。下面我们来说第三种方式的具体实现。

2023-06-11 22:50:47 833

原创 Windows开发:退出程序

Windows程序开发的过程中,经常会遇到程序退出问题,我们需要了解各种进程退出的方式,找到适合我们使用的退出情况。另外,不管使用什么方式退出进程,。

2023-06-11 22:42:03 514

原创 Windows开发:获取网卡速率

项目中遇到需要检查网卡的速度的功能。手动可通过多种方式查看,代码也可以有具体方式获取到。

2023-06-05 10:00:00 710 2

原创 工具:视频流原始流查看(YUV)

在项目种,尤其是涉及多端的图像采集,编码,网络通信,解码和渲染的情况下,需要知道哪个环节出现错误,需要对图像的裸流(原始图像)进行分析,常见的就是YUV格式的图像查看。以下是对YUV的介绍及查看介绍。

2023-05-03 08:12:53 3059 1

原创 工具:PsTools-windows问题定位系列小工具

PsTools是Sysinternals Suite中一款排名靠前的一个安全管理工具套件。现在被微软收购。目前pstools中含各式各样的小工具。如果将它们灵活的运用,将会在渗透中收到奇效。所有的pstool第一次运行时都会弹框。可以用–accepteula这个参数绕过。

2023-03-16 06:00:00 2587

原创 工具:Windows系统问题定位实用工具介绍

TCPView 是一个Windows程序,它将显示系统上所有 TCP 和 UDP 种结点的详细列表,包括本地和远程地址以及 TCP 连接的状态。在 Windows Server 2008、Vista 和 XP 上,TCPView 还会报告拥有终结点的进程的名称。TCPView 提供了一个更信息、更方便的 Netstat 程序子集,它附带了Windows。TCPView 下载包括 Tcpvcon,这是具有相同功能的命令行版本。

2023-03-15 07:00:00 232

原创 算法:0-1背包问题

介绍0-1背包问题的动态规划的解题思路及C++实现。

2023-03-14 07:00:00 174

原创 C++:智能指针

智能指针是C++中一个非常重要的概念,它可以帮助我们在管理内存时避免一些常见的错误。本文将介绍智能指针的基本概念、为什么要使用智能指针、智能指针的实现原理和实现细节、智能指针的用法和使用注意等方面。

2023-03-13 05:00:00 282

原创 Abseil系列七:容器库

Abseil提供了许多容器作为STL容器的替代品。这些容器通常遵循STL容器的属性,尽管通常有一些相关的API差异和/或实现细节与标准库不同。Abseil容器的设计在一般情况下更有效率;然而,在某些情况下,STL容器可能更有效。与Abseil提供的其他一些抽象不同,这些容器不应该被视为它们的STL对应物的临时替代品,因为这两组容器之间存在API和/或契约差异。例如,Abseil容器通常不能保证插入或删除后指针的稳定性。

2023-03-12 21:30:08 1150

原创 Windows开发:服务程序获取当前登录用户的桌面和文档文件夹

在windows系统中,因服务属于system用户,在服务程序中使用常规方法无法获取到看当前登录用户的桌面,文档等目录。以下记录一种获取登录用的相关目录的方式。

2023-02-15 21:16:02 534 2

原创 C++:线程同步操作整理

在多线程开发过程中,不可避免的会存在并发中对同一资源操作,如何保证资源安全和线程同步就必须考虑。以下介绍C++的互斥锁,读写锁,可重入锁,条件变量,自旋锁,公平锁,信号量相关锁和RAII方式实现的锁的管理。

2022-12-05 14:01:36 575

原创 ffmpeg:linux编译及使用

记录在Linux上编译ffmpeg的过程及编译过程的问题,并使用编译库编写测试程序验证是否可用。

2022-11-25 16:34:07 599

原创 工具:makdown特殊操作整理

平常使用typora来记录笔记,typora使用markdown来保存文件,遇到markdown的一些特殊操作,记录整理如下。

2022-11-25 16:29:42 830

原创 C++:乱码之字符串编码

经常在处理字符串的时候出现乱码,主要是字符串编码未处理正确。在这种情况下我们首先要分析清楚输入字符串的编码,经过处理的编码和最终输出的编码是否是正确处理的。本章以内存分析方法跟踪字符集变化的过程,以了解字符存储与转换的编码问题。

2022-11-20 22:27:25 2172 1

原创 ffmpeg:windows编译及使用(vs2019编译)

本章节记录在Windows上编译ffmpeg的过程及编译过程的问题,并使用编译库编写测试程序验证是否可用。在windows上编译主要使用MSYS2和vs 2019编译器编译ffmpeg,包含32位和64位的编译。

2022-11-19 09:53:17 3092 1

原创 Windows开发:映射网络共享目录(磁盘映射)

整理磁盘映射相关命令行和代码实现。

2022-11-12 21:45:13 2532

原创 C++: 字符串操作整理

实际开发中,经常会对字符串进行一些相关操作。其实字符串操作的方式很多,每次都要重新去查资料确认下,现整理相关字符串功能记录,方便后续使用查找。

2022-11-12 21:36:09 233

原创 markdown文档工具的一种在线保存方法

我一直使用typora作为我的markdown工具,但是该工具支持本地编写,无法进行多端同步。因我存在多台电脑记笔记的情况,尤其是一个笔记在一个电脑上写到一半,然后在另外一台电脑要继续写的情况,所以需要对该工具编辑的文档在线保存。虽然有很多在线笔记可以达到目的,但是还是习惯于typora笔记,所以总结出来了一种typeora+git代码仓储的方式来保存笔记,详细使用见下。

2022-11-09 23:11:24 882

原创 Abseil系列六:synchronization同步库

并发操作如果在多线程环境中没有正确使用(或设计),可能会发生冲突,导致以下问题:操作可能需要对共享资源的写访问。我们称这些问题为内存访问问题。比如变量a初始值为0,两个线程同时执行a = a + 1的操作,因为内存访问问题,2个线程执行后,结果可能不是2。操作可能需要以特定的顺序发生。我们有时将这些问题称为同步问题(尽管内存访问问题也是同步问题)。在任何一种情况下,缺乏对共享资源的控制或缺乏对操作顺序的控制都可能导致竞争条件。

2022-11-09 22:45:11 982

原创 Windows和Linux下的系统声音控制

项目中需要在windows和linux系统下对系统的声音进行控制,相关操作包括获取系统的音量,设置系统的音量,获取系统的静音状态和静音,特此记录相关的C++实现。主要涉及的系统有windows和ubuntu系统。

2022-11-04 23:24:40 1009

原创 算法:限流之漏桶算法实现

本章介绍漏桶Leaky Bucket算法在流量限速场景的原理,以及C++实现和相关测试验证。常见的限流算法有计数限流,固定窗口限流,滑动窗口限流,漏桶算发限流,令牌桶算法限流。漏桶算法是限流算法的一种,其原理是将待处理数据统一放在一个桶中,然后根据匀速从桶中拿出数据处理。漏桶算法可应用与多种场景,本章讲诉网络流程控制限制场景的使用,对外发的网络数据进行控制,限制外发的数据的最高流量。

2022-10-30 11:08:45 1725

原创 算法:限流之令牌桶算法实现

本章介绍令牌桶Token Bucket算法在流量限速场景的原理,以及C++实现和相关测试验证。常见的限流算法有计数限流,固定窗口限流,滑动窗口限流,漏桶算法限流和令牌桶算法限流。令牌桶算法是限流算法的一种,其原理是系统会以一个恒定的速度往桶里放入固定数量的令牌,而如果请求需要被处理,则需要先从桶里获取对应令牌,当桶里没有令牌可取时,则拒绝服务。令牌桶算法可应用于多种场景,本章是针对网络流控制限制场景的使用,对外发的网络数据进行控制,使数据以长期的平均速率外发,并运行一个瞬时的最高流量。

2022-10-29 12:21:59 5920

原创 Windows开发:服务程序启动有管理员权限的界面程序

介绍服务程序如何启动有管理员权限的界面进程,并对权限是否生效进行验证。

2022-10-25 22:58:34 1334

原创 Windows开发:控制其他进程的界面显示或隐藏

Windows桌面开发当前进程控制其他第三方进程的界面显示或者隐藏方法

2022-10-24 21:02:45 614

原创 Abseil系列五:strings(字符串工具库)

概述了strings库的一般用法,以及平时开发常用到的一些很实用的字符串函数

2022-10-21 16:19:14 2091

原创 Abseil系列四:flags(命令行解析访问库)使用

Abseil标志库允许对通过命令行传递给可执行程序的标志值进行编程访问。其实就是对命令行参数进行解析,并可快速访问的一个工具库。Abseil Flags库提供了以下特性:以线程安全的方式访问Abseil标志在程序生命周期的任何点都可以访问有效的标志值确保同一进程内的唯一性,防止标志名称冲突提供内置的用法提供的关联帮助文本支持布尔型、整型和字符串类型等,并可扩展以支持其他Abseil类型和自定义类型支持默认值,并可对标志值的进行读写。

2022-10-19 23:08:32 1286

原创 Abseil系列三:Linux编译及使用

记录在Linux上编译Abseil静态库的过程及编译过程的问题,并使用静态库编写测试程序验证静态库是否可用。

2022-10-16 23:11:56 918

原创 Abseil系列二:Windows编译及使用

记录在windows上编译Abseil静态库的过程,并使用编译后静态库编写测试程序验证静态库是否可用。

2022-10-15 23:19:53 2163

原创 Abseil系列一:简介

Abseil 由 Google 的基础 C ++ 和 Python 代码库组成,包括一些正支撑着如、和等开源项目并一起 “成长” 的库。目前已开源 C++ 部分,Python 部分将在后续开放。Abseil 目前开放的 C++ 标准库的扩充库,是从 Google 内部 C ++ 代码库抽取出来的基础库的合集。这些库在 Google 内部经过广泛的测试和生产使用,是 Google 大量运行内容的基石。多数情况下,Abseil 提供了 C ++ 标准中缺失的部分;

2022-10-14 11:51:19 1563

智慧投屏-桌面投屏软件,将电脑本地视频投屏到电视上播放

智慧投屏-桌面投屏软件,将电脑本地视频投屏到电视上播放

2023-03-19

C++实现算法0-1背包问题完整代码

C++实现算法0-1背包问题完整代码,使用QT管理,可独立运行并展示。相关介绍见博客注意说明描述。

2023-03-12

Windows开发:服务程序启动有管理员权限的界面程序

Windows桌面开发中,服务程序如何启动有管理员权限的界面进程。Qt工程管理,纯C++开发。

2022-11-24

Windows开发:控制其他进程的界面显示或隐藏

Windows开发:控制其他进程的界面显示或隐藏。Qt工程和纯C++实现。 在Windows桌面开发中,可能会涉及当前进程控制其他进程的界面显示或者隐藏。比如使用第三方的进程时,需要对第三方进程的主窗口控制,修改第三方进程的成本较高的情况下(无第三方程序的源码或者编译修改源码较困难),可以采用此方式不修改第三方的窗口控制。如果能修改第三方程序的情况下,采用管道传输控制命令,第三方程序通过管道接收控制命令响应处理是更好的方式。

2022-11-24

Windows和Linux开发-系统声音控制(获取音量,调整音量和静音)

Windows和Linux开发-系统声音控制(获取音量,调整音量和静音)。Qt工程和纯C++开发。

2022-11-24

Windows开发-服务进程获取当前登录用户的桌面,文档和应用数据等文件夹目录

Windows开发-服务进程获取当前登录用户的桌面,文档和应用数据等文件夹目录。Qt工程,纯c++代码。

2022-11-24

ffmpeg在linux上编译的动态库(ubuntu 64位非strip版)

在linux上编译的ffmpeg动态库。编译环境为:ubuntu 64位;编译版本为:ffmpeg 5.1.2;x264 stable分支

2022-11-20

ffmpeg在Windows上vs2019编译的动态库(32位和64位包含pdb) 编译版本为:ffmpeg 5.1.2

在windows上编译主要使用MSYS2和vs 2019编译器编译ffmpeg,包含32位和64位的编译。

2022-11-20

Abseil静态库测试工程(可在windows和linux运行)

Abseil静态库测试工程(可在windows和linux运行) Abseil 目前开放的 C++ 标准库的扩充库,是从 Google 内部 C ++ 代码库抽取出来的基础库的合集。这些库在 Google 内部经过广泛的测试和生产使用,是 Google 大量运行内容的基石。

2022-10-19

Abseil在linux上编译的静态库(c++17)

Abseil在linux下编译的静态库,指定的C++版本为C++17。 Abseil 目前开放的 C++ 标准库的扩充库,是从 Google 内部 C ++ 代码库抽取出来的基础库的合集。这些库在 Google 内部经过广泛的测试和生产使用,是 Google 大量运行内容的基石。

2022-10-18

Abseil在vs2019下编译的静态库(c++17)

Abseil在vs2019下编译的静态库,指定的C++版本为C++17。 Abseil 目前开放的 C++ 标准库的扩充库,是从 Google 内部 C ++ 代码库抽取出来的基础库的合集。这些库在 Google 内部经过广泛的测试和生产使用,是 Google 大量运行内容的基石。

2022-10-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除