windows编程
文章平均质量分 65
cuijiecheng2018
C++开发工程师
展开
-
Windows下安装Kafka3
本文讲述Windows(win10)下安装Kafka3的方法。基本流程跟《》一样,也是一样需要先安装Java环境,再部署部署Kafka。首先在官网下载Kafka二进制压缩包。无论是在CentOS还是在Windows下都是下载该压缩包,里面已经包含了Kafka Linux和windows平台下的可执行文件了。选择目前比较新的3.6.1版本下载。原创 2024-03-12 07:23:41 · 1154 阅读 · 0 评论 -
Visual Studio编译出来的程序无法在其它电脑上运行
在其它电脑(比如Windows Server 2012)上运行Visual Studio编译出来的应用程序,结果报错:“无法启动此程序,因为计算机中丢失VCRUNTIME140.dll。尝试重新安装该程序以解决此问题。属性 -> 配置属性 -> C/C++ -> 代码生成 -> 运行库 -> 多线程(/MT)安装完后就可以正常启动exe了。编译出来的是X86程序安装。编译出来的是X64程序安装。在要部署的电脑上安装《原创 2023-08-28 06:30:26 · 4823 阅读 · 1 评论 -
家庭版Windows10/Windows11不支持远程桌面
以管理员模式开启cmd终端,输入netstoptermservice,然后netstarttermservice。解压,分别以管理员身份运行install.bat,RDPConf.exe。将其替换到C\ProgramFiles\RDPWrapper中。我们下面地址下载rdpwrap.ini-master.zip。我们可以通过RDPWrap这个项目让家庭版也支持远程桌面。然后我们即可在另外一台电脑上远程控制该电脑。首先在下面网址下载该项目,下载zip。......原创 2022-07-26 00:17:11 · 15747 阅读 · 9 评论 -
VS Code 调试JavaScript报错:“crbug/1173575, non-JS module files deprecated”
按照网上的方法(VSCODE 调试 Javascript)装好debugger for chrome扩展后,调试JavaScript,结果无法正常在浏览器中显示网页,报错:“crbug/1173575, non-JS module files deprecated”,如下图所示:解决方法:打开launch.json,更改"configurations"中的"url"中的端口号为Live Server的端口号保存,然后再重新按F5,即可正常调试...原创 2021-08-04 12:26:48 · 51551 阅读 · 25 评论 -
音视频入门基础:像素格式专题(5)——使用OpenGL实现yuv420p转rgb播放视频(三重纹理实现)
本文讲述使用OpenGL播放YUV(yuv420p)文件的方法。二、代码核心代码如下:...原创 2021-07-07 16:30:07 · 2970 阅读 · 3 评论 -
vs2019 + Qt5.15.2开发环境搭建
windows下可以通过Qt Creator或者windows+Qt插件来写Qt程序。下面讲述vs2019+Qt5.15.2开发环境的搭建方法。首先安装vs2019。安装完后安装Qt,打开链接:https://download.qt.io/official_releases/online_installers/,下载qt-unified-windows-x86-online.exe(从Qt5.15.0开始,官网已经不提供离线版的Qt安装包了,所以得下载在线版的)。下载后运行,在下图页面输入Q原创 2021-06-30 00:13:23 · 7789 阅读 · 6 评论 -
C++FTP客户端库:ftplibpp的使用
一、简述 ftplibpp是一个跨平台的可以提供ftp客户端功能的C++库。它包含可以实现ftp客户端功能的类,支持所有基本的ftp功能以及一些高级功能:如恢复、fxp、ssl/tls加密、支持大文件或符合当今标准的日志记录等。二、使用首先在github上(链接:https://github.com/mkulke/ftplibpp)下载ftplibpp源码。解压后得到如下文件:...原创 2021-05-16 08:50:58 · 7720 阅读 · 15 评论 -
C++压缩库zipper的使用
一、简介 zipper是一个C++压缩库,使用它可以将文件和文件夹压缩为zip文件,或者将一个zip文件解压。其下载链接为:https://github.com/sebastiandev/zipper。下面讲述其在windows平台的使用二、下载源码首先通过git下载zipper的源码(注意:不要在https://github.com/sebastiandev/zipper的页面中直接点击"Download ZIP"直接下载源码,这样下载下来的源码中不含minizip的源码)...原创 2021-01-09 07:17:22 · 5621 阅读 · 3 评论 -
使用xlnt库读取excel中文乱码
xlnt下载链接:https://github.com/tfussell/xlnt。基本操作介绍:《用XLNT库读写Excel文件》一、问题描述:如下图所示:存在excel文件“test.xlsx”,里面内容如下:使用如下代码读取该excel文件中的内容:#include <iostream>#include <xlnt/xlnt.hpp>using namespace std;int main(){ xlnt::workb...原创 2021-01-05 00:04:25 · 2741 阅读 · 3 评论 -
C++中使用RegQueryValueEx函数获取注册表中REG_SZ类型的值不正确
如下图所示,注册表的HKEY_CURRENT_USER主键下Software\\AB子键中有名称为CD,类型为REG_SZ,值为“123”的字符串一开始我是通过下面的程序来获取名称为CD的字符串的值#include <stdio.h>#include <windows.h>#include <windef.h>#include <winreg.h>#include <algorithm>#include <s.原创 2020-10-29 22:32:33 · 2983 阅读 · 0 评论 -
vs报错:8007000E 内存资源不足,无法完成此操作
一、现象 使用vs2015编写了一个程序,结果调试时报错:“8007000E 内存资源不足,无法完成此操作”,如下图所示:二、解决方法属性 -> 链接器 -> 系统 -> 启用大地址,选择“是”,如下图所示。设置好后,重新编译后,即可解决该问题。内存资源不足可能会导致我们编写的程序在运行时发生各种各样的问题,比如创建线程不成功。如果是GUI程序,则可能会是进行窗口最大化操作时软件崩溃,无法再弹出新窗口等。当产生这些问题时,我们就可以考虑是否是内存不足导致...原创 2020-05-17 13:44:36 · 27984 阅读 · 0 评论 -
TortoiseSVN文件夹及文件图标不显示
看到网上介绍的方法基本都是改注册表,比如这篇文章:《SVN系列操作(二)&svn不显示图标的解决方法》。但是我按照这些文章改了注册表后,仍然无法显示图标。最后通过更改svn客户端的设置,解决了这个问题。步骤如下:TortoiseSVN -> 设置确保图标集这里一定要选择一项,比如XPStyle执行上述操作后,发现图标显示了。...原创 2020-01-29 08:43:49 · 479 阅读 · 0 评论 -
使用C++实现一个简单的日志系统
一、概述 本文讲述使用C++在windows平台实现一个简单的日志系统的方法。该日志系统的特点如下:1.支持类似c语言printf风格的输出方式,支持不定参数。2.支持将日志输出到屏幕和文件中。3.支持打印系统时间。4.线程安全,各个线程都能同时写出日志。二、实现方式实现代码如下:AfMutex.h#ifndef _OSAPI_MUTEX_H...原创 2019-12-12 21:48:44 · 2420 阅读 · 1 评论 -
使用nsis制作的安装包安装后,无法卸载干净的问题
使用nsis制作的安装包安装后,在安装目录下会生成uninst.exe文件,如下图所示。 我们可以通过执行该uninst.exe程序删除已经安装的软件,也可以在控制面板中删除该软件。但有时候我们通过这些途径删除软件后,在安装目录下仍然可能会残留文件或者文件夹无法删除。如下图所示,运行卸载程序后在安装目录下Log和Resources文件夹仍然存在,在Log文件夹下面还存在Alarm、Sy...原创 2018-06-11 19:01:53 · 4607 阅读 · 1 评论 -
找到Qt程序长时间运行崩溃原因的方法--Dump(DMP)文件
最近遇到一个问题,使用vs+Qt开发应用程序,在本地测试正常,但在别人的机器上(windows平台)运行了一段时间(大概五天)崩溃了。所以这个时候我们应该怎样调试并找到程序崩溃的原因呢?发布的应用程序使用的是release版本。release版本是比较难调试的,因为缺少很多调试信息,在VC/VS中我们可以通过生成DMP + PDB进行源码级定位,使用这种方法,当程序在别人电脑上出现异常或者崩溃...原创 2018-08-25 01:04:17 · 14162 阅读 · 2 评论 -
vs2015调试时无法查看变量值(调试时无法查看string、vector等类型的值)
一、现象 最近使用vs2015调试C++程序,结果发现了一个很奇怪的问题:调试时无法查看stl里面string,vector,list等容器类的值了,如下图所示,调试时把鼠标移动到“str”这个变量上面,结果发现显示“str|{...}”,无法显示str的值了。 正常情况下调试时应该显示“hello world”才对,如下图所示: 二、问题产生的可能原因 问题发...原创 2018-09-06 19:33:53 · 38001 阅读 · 13 评论 -
0x010D99A9 处有未经处理的异常(在 XXX.exe 中): 0xC00000FD: Stack overflow (参数: 0x00000000, 0x06772000)
最近使用vs2015开发windows桌面应用程序,发现写出来的程序运行时崩溃了,报错“0x010D99A9 处有未经处理的异常(在 XXX.exe 中): 0xC00000FD: Stack overflow (参数: 0x00000000, 0x06772000)”。如下图所示: 程序报上述错误的原因是递归太深了,将vs的项目属性->链接器->系统->...原创 2018-10-14 23:00:07 · 45445 阅读 · 6 评论 -
通过更改主题解决notepad++字体模糊的问题
Notepad++是 Windows操作系统下的一套文本编辑器(软件版权许可证: GPL),有完整的中文化接口及支持多国语言编写的功能(UTF8技术)。它比 Windows 中的 Notepad(记事本)强大,除了可以用来制作一般的纯文字说明文件,也十分适合编写计算机程序代码。 下载完notepad++后,用它打开文本文件,我们会发现可能存在字体模糊的问题,如下图所示: 这个...原创 2018-12-15 04:07:23 · 6109 阅读 · 2 评论 -
vs中使用快速监视查看动态数组中元素的值(查看new出来的数组中元素的值)
在vs中调试时我们可以通过移动鼠标到数组名上查看数组中元素的值。但是如果数组是new出来的,是动态数组,那我们调试时可能就会无法查看所有元素的值。如下所示,vs中有如下代码#include <iostream>int main(){ int *a = new int[4]; a[0] = 1; a[1] = 2; a[2] = 3; a[3] = 4;}...原创 2019-03-24 20:58:31 · 16305 阅读 · 3 评论 -
C/C++使用strcpy函数报错:“XXX处有未经处理的异常:0xC0000005:写入位置0x00000000时发生访问冲突”
strcpy是一种C语言的标准库函数,它的作用是把含有'\0'结束符的字符串复制到另一个地址空间,返回值的类型为char *。其原型声明:char *strcpy(char *dest, const char *src);但使用strcpy函数时我们得注意空指针不能作为其参数,既不能作为dest的参数,也不能作为src的参数,否则会报错误:“XXX处有未经处理的异常:0xC0000005:写入...原创 2019-05-05 21:26:54 · 6216 阅读 · 1 评论 -
vs运行程序时报错:“Stack around the variable XXX was corrupted”
使用vs运行程序时我们有时候会看到这样的一个错误:“Stack around the variable XXX was corrupted”。导致该错误产生的原因一般是是访问了未分配的地址,内存越界造成的,越界写了不该写的内存区域。示例:有如下程序:#include <stdio.h>#include <string.h>int main(){...原创 2019-05-08 19:17:20 · 18690 阅读 · 0 评论 -
vs运行程序时报错:“XXX处有未经处理的异常: 0xC0000374: 堆已损坏”
使用vs运行程序时我们有时候会看到这样的一个错误:“XXX处有未经处理的异常: 0xC0000374: 堆已损坏”。导致该错误产生的原因一般是是访问了未分配的地址,内存越界造成的,越界写了不该写的内存区域。示例:有如下程序。#include <stdio.h>#include <string.h>int main(){ char *str =...原创 2019-05-06 23:19:23 · 27808 阅读 · 5 评论 -
windows下安装包制作软件:NSIS的使用方法(以Qt为例)
NSIS (Nullsoft Scriptable Install System) 是一个专业开源的制作 windows 安装程序的工具。它提供了安装、卸载、系统设置、文件解压缩等功能。下面以Qt程序安装包的制作为例,介绍NSIS的用法。 首先准备好要打包发布的目标程序,如下图所示:(包括可执行程序,各种dll模块库,依赖库,插件库,资源文件等) 下载nsis,在windows平台下解压,...原创 2018-05-20 23:07:33 · 8470 阅读 · 1 评论