自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

白袍小将的博客

好好学习,天天向上

  • 博客(164)
  • 资源 (3)
  • 收藏
  • 关注

原创 Node 之 React ref 最新版本的用法

在进行React开发时,有时在组件的代码中需要访问实际的Dom对象,这个时候就要用到ref这个属性来将 dom对象的值保存进来,以便代码访问。

2022-10-24 22:43:39 720

原创 VB.net与VB6 调用Websocket功能的方法--Websocket For VB

如何在VB.net与VB6 实现Websocket的功能方法,介绍了一个现成的免费组件的使用,该组件简单易用,性能优越。该组件功能全面,支持TLS,全面支持WS与WSS协议

2022-10-06 21:34:06 3416 1

原创 Windows 10 docker 容器添加新端口映射的方法与步骤

在Docker容器已经创建后,需要添加新的端口映射,即对已经存在的Docker容器添加新的端口映射,可以通过以下步骤来添加,即通过修改配置文件的方法。

2022-09-30 17:43:05 6722 4

原创 进程如何判断是否在docker环境里运行

进程如何判断是否在docker环境里运行,可以通过查看系统的相关文件信息来确定

2022-09-19 10:09:18 1830

原创 Windows 下手工安装Mysql服务器

Windows 下手工安装Mysql服务器

2022-07-28 23:38:23 106

原创 React 中的副作用函数 useEffect 使用说明

React 中的函数式组件为了能够Hook相应的阶段,采用useEffect函数,以实现类(class)组件的componentDidMount,componentDidUpdate 和 componentWillUnmount 这三个函数的组合的相关目的。

2022-07-03 18:07:18 1739

原创 Windows下无法删除带空格和“.”的文件夹的解决办法

Windows下无法删除带空格和“.”的文件夹的解决办法

2022-06-20 10:16:44 7792 6

原创 将SVG 转换为png -- ImageMagick 转换 svg 为透明png 图

SVG 是当今流行的网络图像格式,有时候需要将SVG 转换为png图。因为SVG是矢量图,本身是透明的,因此转换为PNG时,我们也需要它是透明的。本文简单描述了如何使用

2022-06-13 14:14:41 4586

原创 Warning: Accessing non-existent property ‘column‘ of module exports inside circular depen

Warning: Accessing non-existent property 'column' of module exports inside circular depenWarning: Accessing non-existent property 'column' of module exports inside circular dependency

2022-06-07 09:40:52 3055 1

原创 React 之react-redux的connect方法的使用说明

本文详细介绍了React 之react-redux的connect方法, reactUI组件只负责 UI 的呈现,不带有任何业务逻辑,UI组件内部不再操作state(状态值,如果不使用React-Redux,可以用state来保存值),所有的参数都是通过this.props来获取。............

2022-06-05 23:02:26 2358 1

原创 C 语言环境变量函数 说明

C语言操作环境变量有getenv putenv setenv和unsetenv等函数,现在一一说明如下

2022-05-18 01:24:47 2225

原创 C++ 11 匿名函数 (Lambda表达式)说明

新的C++语言已经向javascript灯脚本语言学习了,支持匿名函数,好在笔者对javascript等脚本语言也比较熟悉,所以理解C++的匿名函数也比较容易。匿名函数是指在一个函数体内的某个功能需要一个定义函数,但是又不想去命名这个函数的场合下现场即时定义的表达式,也就是指Lambda表达式,用于简化编程工作。

2022-05-17 11:41:17 1002

原创 std::string 直接操作其内存写入数据的方法

std::string 直接操作其内存写入数据的方法

2022-05-11 23:29:16 2206

原创 C++ R 原始字符串 R 表示方法,R是原始字符串

新的C++标准可以在代码里嵌入一段原始字符串,该原始字符串不作任何转义,所见即所得,这个特性对于编写代码时要输入多行字符串,或者含引号的字符串提供了巨大方便。原始字符串的开始符号 :R"( , 原始字符串的结束符号:)"。

2022-05-02 12:32:34 23989

原创 nodejs的require加载模块的路径搜索顺序说明

nodejs的require加载模块的路径搜索顺序,非核心模块,node_modules(遍历至根目录) -> NODE_PATH目录 -> 全局目录,如果传递给 require() 的模块标识符不是一个核心模块,也没有以 '/' 、 '../' 或 './' 开头,则 Node.js 会从当前模块的父目录开始,尝试从它的 ./node_modules 目录里加载模块

2022-04-11 17:52:32 2522 1

原创 CentOS 启动后网卡自动启动不了 的解决办法

CentOS 启动后网卡自动不能启动,通过禁止NetworkManager 服务来解决了问题。用service NetworkManager stop停止服务,用chkconfig NetworkManager off来禁止开机启动。

2022-04-11 00:50:08 3517

原创 Windows 7 连接 Windows 10 共享打印机,Windows 无法连接打印机,操作失败,错误为0x0000011b 的终极解决办法

Windows 7 连接 Windows 10 共享打印机出现错误 0x000001b,无法通过卸载KB5005565安全更新来解决该问题,正确的处理方法是手工添加一个本地打印机,本方法稳定可靠。本文详述了该方法的操作步骤。

2022-04-10 22:23:54 193947 60

原创 incompatible types when initializing type ‘float32x4_t’ using type ‘float32x2_t’

在编译 libopus时,出现 celt/arm/celt_neon_intr.c:137:14: error: incompatible types when initializing type ‘float32x4_t’ using type ‘float32x2_t’ SUMM = vmlaq_lane_f32(SUMM, YY[0], vget_low_f32(XX[0]), 0);通过修改arm_neon.h文件中的vmlaq_lane_f32宏定义来解决问题。

2022-03-23 19:05:17 2798

原创 shell脚本如何判断上一个命令执行是否成功

shell脚本通过$?来获取上一条语句的返回值,如果成功则 $? 等于0,否则为失败。因此可以通过$? 来判断上一个命令执行是否成功

2022-03-22 19:36:45 8009

原创 shell 脚本如何判断文件是否存在

Linux系统脚本编程判断文件是否存在的所有选项,包含判断是否常规文件、是否目录、是否链接文件、是否可执行文件等。

2022-03-22 18:48:12 48546

原创 shell变量 $*与 $@的区别

$*和$@的区别:在没有双引号包裹时,$*与 $@相同:都是数组;被双引号包裹时,$*与 $@不同:"$@"为数组,"$*"为一个字符串#!/bin/shsome_func() { for var in $@ do echo ${var} done}#---other_func() { for var in $* do ech.

2022-03-15 15:34:23 5320

原创 Linux 动态库加载位置与设置

在linux系统中,如果某些代码做成动态库后,exe文件在加载时需要知道怎么找到这个动态库,即使这个动态库文件与exe文件放在同一目录下也不一定加载成功。位置搜索顺序如下:1)在ELF可执行文件中动态段DT_RPATH指定,需要在gcc 编译是加入链接参数“-Wl,-rpath”指定动态库搜索路径;2)环境变量LD_LIBRARY_PATH指定路径;3)/etc/ld.so.cache中缓存的动态库路径。可以通过修改配置文件/etc/ld.so.conf 增删路径(修改后需要运行ldconfig

2022-03-14 16:03:30 3277

原创 GCC详解的-Wl选项说明

在GCC编译程序时,由于GCC命令不经能够编译,也能够链接程序,GCC链接程序是通过ld命令实现的,如何将GCC的命令行参数传递给ld命令呢,这就是通过-Wl,来实现的。格式如下:gcc -Wl,param1,param2,param3,...在调用ld命令时,会等效于如下:ld param1param2param3注意:-Wl, 后的逗号(,)必不可少,如果要传递多个参数,参数间用,分隔-Wl,-Bstatic指定后续ld在处理 -l 参数来链接库文件的链接方式首...

2022-03-13 23:36:47 8886

原创 Linux 中的Shell 字符串表达式 计算笔记

在linux系统的SHELL脚本编程中,经常要处理一些字符串变量。比如,计算长度、截取子串、字符替换等,常常要用到awk、expr、sed、tr等命令。但shell脚本对字符串操作经常用简单的字符串处理表达式来操作,这种简单表达式特别容易忘记,笔者在此做下笔记。${#VALUE}:计算VALUE字符串的字符数量。${VALUE%.*}或${VALUE%%.*}:删除VALUE字符串中以分隔符“.”匹配的右边字符,保留左边字符。${VALUE#*.}或${VALUE##*.}

2022-03-13 12:39:13 522

原创 apt-get 使用说明

apt-get ,全称Advanced Package Tool,是一款适用于Unix和Debian系统的应用程序管理器。apt-get命令一般需要root权限执行,所以一般跟着sudo命令。apt 常见命令用法说明格式:apt-get <command> [packagename]packagename 指代为软件包的名称。apt-get update在修改/etc/apt/sources.list或/etc/apt/preferences之后运行该命令。此外您需要..

2022-02-15 19:25:06 2121

原创 HTTPS 协议的握手过程笔记

http协议是无加密的,客户端发起tcp连接成功后发送请求头,然后服务器响应数据给用户。但https不一样,客户端在发送资源请求之前必须经过握手,传递资源数据加密的密码,然后才发送请求,处理响应。HTTPS在采用SSL协议,SSL协议依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。具体是如何进行加密,解密,验证的,且看下图,下面的称为一次握手。具体步骤解析:1、 客户端发起HTTPS请求 这一步先建立TCP连接,然后通过ssl协议进行握手。2、传送证书采用HT..

2022-01-13 15:58:33 587

原创 RSA 非对称加密笔记

1、产生密钥2、传递公钥3、用户用公钥加密4、传递密文5、服务器用私钥解密6、初始化完成#include <iostream>#include <fstream>#include <openssl/bn.h>#include <openssl/rsa.h>#include <openssl/pem.h>extern "C"{ #include <openssl/applink.c>};

2022-01-13 15:08:20 892

原创 nlohmann/json 的用法示例

nlohmann/json 是一个C++实现的JSON解析器,使用非常方便直观。由于查看文档篇幅过长,不便于迅速阅读抓重点。而且,所举例的某些用法实践上其实比较少用到,而某些实践上常用到的一些用法,官网却缺例子。所以自己简要总结了一下它的主要用法,并加上自己写的示例,希望能给到新接触该库的朋友一些帮助。

2022-01-06 09:39:19 7554

原创 H5中的history单页面,手动实现单页面开发,细说h5单页面原理

就目前来看,前端的单页面开发占了很大一部分,一方面无刷新的切换增强了体验,并且浏览器记录依然存在,前进后退都没问题,在之前我们通地址栏中的hash改变来触发onhashchange方法来实现单页面应用,但是#的形式总是令人不爽,幸好h5新增了history.pushState与history.replaceState。1.介绍APIhistory.pushState(data, title [, url]):往历史记录堆栈顶部添加一条记录; data会在onpopstate事件触发时作为参数传递

2022-01-01 11:44:15 1971

原创 unicode_to_utf8转换函数源码

unicode to utf8转换函数的源代码,适合所有操作系统,不需要ICONV库。linux 实现UNICODE到UTF8的转码函数,可以替代Windows里的MutiByteToWideChar 函数

2021-12-29 14:52:46 1490

原创 WebRTC 之 DTLS 技术解析

DTLS(Datagram Transport Layer Security) 提供了 UDP 传输场景下的安全机制,能防止窃听、篡改、冒充等问题。在 WebRTC中使用 DTLS 的地方包括两部分:Datachannel 数据通道。在 Datachannel 数据通道中,WebRTC 完全使用 DTLS 来进行协商和加解密MediaChannel 媒体通道。在媒体通道中 WebRTC 使用 SRTP 来进行数据的加解密,DTLS 的作用仅仅是用来做密钥交换,RTP/RTCP 的数据为了与历史

2021-12-26 00:46:21 1856

原创 Linux查看端口占用的方法

一、liof 命令lsof命令的英文是:list open files,用于列出当前系统打开文件。lsof -i:<端口号>例如:lsof -i:8188二、netstat命令netstat -tunlp | grep <port>例如:netstat -tunlp | grep 8188...

2021-12-24 13:59:23 2820

原创 linux系统查看网络状态命令-netstat 使用参数详细说明

netstat 命令是一个用于监控系统TCP/IP网络状态的命令,它可以显示网络连接与每一个网络接口设备的状态与进程相关信息。netstat 使用方法netstat [参数]其中选项] 表示后面跟的命令行参数,可以通过 netstat --help 查看到所有可用的命令行参数,本文将netstat的中文说明总结如下:名称 作用说明 -a或--all 显示所有连线中的Socket; -A<网络类型>或--<网络类型> 列出该网络类型连线..

2021-12-24 11:18:19 4418

原创 error while loading shared libraries: libssl.so.10: cannot open shared object file: No such file ...

libssl.so.10: cannot open shared object file

2021-12-18 13:19:53 21863

原创 Centos 7防火墙添加端口及管理命令(Centos 7 及以上版本)

Centos7.x 操控防火墙状态规则和开放规则,经常使用的命令

2021-12-17 10:18:21 18913

原创 ${var:-},${var:=},${var:+},${var:?},${var:}变量表达式意义

${var:=},${var:+},${var:-},${var:?},${var:}变量表达式的含义

2021-12-15 12:27:05 1558

原创 mkdir VS mkdir -p

mkdir 与 mkdir -p的区别

2021-12-15 10:40:32 1870

原创 Linux下PHP 7源码编译过程

一、安装依赖包yum install -y gcc gcc-c++ make zlib zlib-devel pcre pcre-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel

2021-11-23 17:24:32 310

原创 Makefile 中的基本字符串替换函数与处理函数的使用参考

概述在进行Linux系统开发时,有时候一个项目源代码文件比较多,需要手写一个Makefile来帮助编译,Makefile的知识比较多,本文,笔者仅将Makefile中的字符串处理函数部分提取出来,方便以后参考。在Makefile中可以使用函数来处理变量,从而让我们的命令或是规则更为的灵活和具有智能。make所支持的函数也不算很多,不过已经足够我们的操作了。函数调用后,函数的返回值可以当做变量来使用。Makefile中函数的调用语法函数调用,很像shell脚本中变量的使用,也是以“$”来标识的,其

2021-10-12 14:58:06 4795

原创 Chrome 94版本及以后公网网页不能向私网POST请求的问题

问题:以前的系统将网页部署在公网,应用服务器部署在私网,用Chrome浏览器一直能够正常工作,今天,突然发现不能工作了,而系统代码未做任何改动,就不行了。通过搜索发现问题的原因如下:从2021年9月22号,Chrome 94 已正式发布。Chrome 94 默认开启“阻止不安全的专用网络请求”,将使得http的站点请求私有网络接口被拦截。通过查看Chrome的版本信息如下:原来我的Chrome浏览器被Google公司偷偷地升级为94版本了,所以出现了问题。问题解决办法1、临.

2021-10-10 12:58:38 2397 1

DXGI屏幕捕捉源码-适合于Windows10 的高效屏幕捕捉源码

基于Windows 10 的Desktop Duplication API 技术开发的桌面捕捉源码,采用DXGI技术进行屏幕捕捉,不仅CPU资源占用少,而且能够达到比较高的帧率。DXGI屏幕捕捉源码仅适合Windows 8 以上的操作系统,Windows 7及以下操作系统不适用。这个代码经过调试后是可以用于产品的,需要的可以在此代码的基础上进行改进。

2021-09-11

http超大文件断点续传服务器

实现的代码演示了一个具备超大文件http上传的服务器,支持所有浏览器,支持断点续传,支持的文件大小不限,支持Windows与linux。

2018-06-08

VBWebsocket.zip

一个用于VB6/VB.NET/C#的高性能Websocket客户端组件、支持WS、WSS协议,内含VB6/VB.NET/C#样本代码,稍微修改即可使用于产品,稳定可靠。完全采用C语言实现的Websocket组件,对Websocket协议完全实现。支持x64/x86两个操作系统,支持Windows 7 以上操作系统。

2021-03-17

空空如也

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

TA关注的人

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