NPS内网穿透之p2p连接

使用场景

NPS的P2P点对点穿透,大文件传输,如在内网架设NAS,流量不经过公网服务器转发

要求

目标内网设备(被访问端)与访问端都需要运行npc客户端,且二者NAT类型不能同时为对称型网络

NPS服务器基本配置不再介绍,可参考此文nps 内网穿透。本文只介绍P2P如何配置。

P2P配置方法

1、在公网服务器配置nps.conf文件,添加如下两行:
继续阅读 »

nps 内网穿透

nps简介

背景

端口、密码和IP说明

服务端前期配置

继续阅读 »

win11右键功能杂乱,想换回win10

第一步:

打开终端:

输入一串代码:

之后就可以了,要是不行的话就重启下电脑,或者不想重启的就重启下资源管理器

执行:

即可返回win11的操作

在游戏协议中使用Protobuf的正确姿势

通协议中的消息

对游戏项目而言,我们通常会使用TCP进行前后端的通信协议开发,TCP是字节流协议,所以还需要在网络代码里把TCP字节流解析成应用层需要的一条一条消息(message)。

一条消息包含消息ID和消息内容(payload)。

消息ID主要用于告知业务代码后续的二进制payload应该解析成什么样的结构,通常为了节省流量,消息ID使用整数表示。

继续阅读 »

如何从DLL或者DEF文件生成LIB文件

Visual C++ 开发工具提供了两个命令行工具,一个是dumpbin.exe,另一个是lib.exe。利用这两个工具即可从dll导出其对应的lib。

1、在命令行执行:
dumpbin /exports yourdll.dll > yourdll.def

2、编辑 yourdll.def 文件,使之格式与.def文件格式一致。比如:

EXPORTS;
fn1;
fn2;

3、在命令行执行:
lib /def:yourdll.def /machine:i386 /out:yourdll.lib

 

注:上面两个命令所在文件夹为:安装的vs目录下。即..\vc\bin\amd64\

使用 Git 生成编译版本号

一般而言,我们的软件版本号通常会包括一个编译版本号。如果你的代码使用版本控制系统进行管理(很多开发者都是这么做的),这个编译版本号可以是我们版本控制系统的提交版本。

如果我们使用 Git 进行管理,这个版本号会是一个 40 位的 SHA-1 的哈希值。不过,要是我们的软件版本号添加这么一个 40 位长的字符串,显然是不合适的。所以我们一般会取前 7 位——如果这样还不能标识出唯一版本,那么就取前 8 位等等。不过,手动去修改这个值当然是不合适的,我们有更简便的方式。这就是本文所要介绍的内容:使用 Git 生成这个编译版本号。
继续阅读 »

密码保护:缅怀”水蜜桃”

此内容受密码保护。如需查阅,请在下列字段中输入您的密码。

[转]虚拟机软件VMware Workstation发布16.2.0更新:添加对Win11的TPM支持

10 月 17 日消息,据 Neowin 报道,在几天前,VMWare 发布了 16.2.0 版本更新,但是黑暗模式出现了问题,VMWare 已经承认了这一点,并将很快发布修复程序。

值得一提的是,官方的更新日志并没有提到,在更新中,VMWare 还添加了对Win11软件级别 TPM 的支持。

此前,如果用户一直在启用 TPM 的 VMware Workstation Pro 中使用 Win11 虚拟机,用户必须为每个加密的 VM 设置和输入密码。但是本次更新之后,用户可以移除加密,并加入软件级 TPM 标志来代替,不必每次都要输入密码。

如果你在 Windows 中用 BitLocker 进一步加密虚拟机,可能需要在执行下面的步骤前先解密驱动器。

如果你已经在Windows 10或 11 中添加了 TPM:

确保你已经更新到 16.2.0 版本。
继续阅读 »

MySql8服务安装与卸载

1,下载

https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.12-winx64.zip

2,解压

将mysql-8.0.12-winx64.zip解压到C:\Program Files\MySql目录下

3.在C:\Program Files\MySql\mysql-8.0.12-winx64目录下新建my.ini文件

需要修改的配置项有basedir-数据库安装目录,datadir-数据存放目录
继续阅读 »

mysql8系列小版本windows原地升级实例

下载新版本地址:
https://dev.mysql.com/downloads/mysql/

继续阅读 »