oop homework
第一次上机作业第一题安装和配置C++开发环境
所使用开发环境版本 Windows 11 家庭中文版版本 22H2安装日期 2022/9/22操作系统版本 22621.2283体验 Windows Feature Experience Pack 1000.22662.1000.0
编译Compile有如下选择
MinGW
MinGW-w64
MSVC
先前配置的是MinGW,个人认为为了满足学习需求,稳定性足够足矣,不过为了满足作业的完整性,我愿意再演示一下MinGW-w64的配置
ide选择使用vsc(Visual Studio Code),这是一款轻量化的文本编辑器(我认为基本配置后可以称作ide),进行小的编辑使用比较方便,如果后续有更大的项目级开发需求,我会考虑换使用Visual Studio
环境配置先前提到,未配置过的vscode仅能作为一个文本编辑器使用,为了可以在ide上对代码进行语法分析、编译运行、调试等,需要安装相应的拓展,并在拓展中设置编译器配置信息
安装过程无需授权等,因为使用的内容均为免费的(如果追求开源可以寻找开源版vscode ...
Prism RegionManager Navigation导航功能
Prism RegionManager Navigation 导航功能官方文档 prismlibrary.com
这段时间写这个WPF啊,脱离了Prism MVVM还真有点玩不转,老老实实回归MVVM了,以后可能试试别的框架,总之他这个事件订阅功能确实是很好用,然后在Prism的RegionManager这一块折腾了很久
简单来说,这个IRegionManager是继承了RegionManager的一个类,它可以通过依赖注入的方式导航UserControl,相当于降低了代码的耦合度,便于维护
具体流程在app.xaml.cs里重写RegisterTypes123456protected override void RegisterTypes(IContainerRegistry containerRegistry) { containerRegistry.RegisterForNavigation<ViewA>(); containerRegistry.RegisterForNavigation<Vi ...
Genshin Impact Crawler 原神爬虫
仓库地址https://github.com/Klutton/Genshin-Impact-Crawler
Genshin Impact Crawler Happy April Fool’s Day, to celebrate, I wrote a py crawler that downloads images, audios and profiles using only requests package(‘also openpyxl to save excel using pandas’)
我有女朋友了!愚人节快乐!我还是单身狗🙂 为了庆祝愚人节以及作为原批的实力展示,我只用了python和requests库爬取了图片,音频和个人设定(其实还有openpyxl用来保存excel文件)
dependencies1pip install requests, openpyxl
output
directories: images, audios, profiles
log: logs.log
Naming issue, all names are Chinese, becau ...
CVLAN 项目已经启动
什么是CVLANCVLAN (cloud virtual local area network) 是设计专门用于组建局域网以便进行联机游戏的组网应用,使用go语言编写内核,并拥有自定义的协议确保连接流畅与稳定
高效率的协议(84ns/op的传输速率)
连接稳定(自定义协议,避免qos丢失)
安全可控(可以从控制面板控制接入CVLAN的用户)
集群化部署(用户自建服务端可以并入CVLAN网络,随后二次分配虚拟局域网,避免了一个服务器只能跑一个虚拟局域网的尴尬情况,优化网络链路)
开发周期有多长到制作出demo预计半年?此次开发并不是单枪匹马,进度人员会视情况公布
客户端仍由我负责(服务端可能有一点)由Nyan n2n积累经验后,桌面开发会蒸蒸日上吧(为什么我跑到前端去了)此次会选择MAUI跨平台桌面开发
开源吗?也许会像zerotier一样,开放边缘节点,为了确保适用于中华人民共和国的相关规定,流量必须是安全可监控的,因此对于开源方面将会有所斟酌
题外话
期间维持对Nyan n2n的维护,在开发出CVLAN之前,n2n看起来仍然是组网联机的选择之一
Nyan n2n 项目重构通知
/remake不得不说的是,Nyan n2n 的开发是带着学习的态度的,从头到脚都不没有完全按照工业设计的标准,不得不说这是我个人原因导致的。
因此我打算在完善完1.4.0.0之后,推到重头开始,重构一个项目等同于浓缩上次一开发的经验教训,也会避免堆出来一个屎山,我会继续努力的。
关于开源目前已经把 屎山 开源到GitHub上,仓库地址为https://github.com/Klutton/KLTN_N2N_auth,可以看见里面不止有客户端,还有服务端,以及不符合规定的程序打包,呃确实该停下来回顾一下下一步怎么接着走下去了。
真正在开发的就是https://github.com/Klutton/KLTN_N2N_auth/tree/main/client/WPF Client/kltn_n2n_client/Nyan n2n/这个wpf客户端了,版本是 .netframework 4.8,蛮落后的hh,下面会换 .net core的。
如果你想要下载历史版本,请到https://github.com/Kl ...
Nyan n2n 1.4.0.0 更新日志
更新内容
状态消息提示
上次连接信息保存
状态消息提示当开始连接n2n服务器时,从ui底部栏目弹出信息提示连接到了哪个阶段,直到出现 连接成功! 提示时才说明连接到了服务器;同时,如果本电脑没有安装虚拟网卡时,会在消息提示中提醒用户
上次连接信息保存会在文件目录的 \data\ 文件夹中分别保存直接连接和CnGame赞助节点的连接信息,下次打开软件时会提前选定上次点击连接按钮时的连接选项(例如服务器地址、是否勾选强制中转等等)
Nyan n2n开发日记-从零开始
Nyan n2n 是什么?一个围绕ntop开发的组网软件n2n开发的软件。
分为:
Windows客户端(使用WPF开发)
Linux服务端(在n2n supernode的基础上添加用户认证,拓展增加用户管理的功能)
目前
支持直接连接已经开启n2n supernode的服务器
支持直接在软件中连接CnGame开设的免费服务器
将来
将会支持服务端docker部署,实现在服务端对连接用户的管理;
将会支持客户端自动更新
将优化客户端体验
一些说明
我的项目看起来没有pull request的意义,因为我是围绕编译好的软件从外部进行启动等
我的项目并不完善,因此还没有开放仓库
我为什么要做这样一个gui?因为n2n支持udp广播等等众多的特点使它可以用于远程组网用来连接游戏(例如文明6等),因此n2n被使用者赋予了联机工具的意义,做这样一个软件,不仅方便我与朋友联机游戏,也方便其他人联机游戏
目前仍然在开发直接连接服务器(不透过我的套壳验证)相关的优化,也许四月份就会完善套壳验证连接功能
CnGame维基推广使用我的GUI进行联机,因此我会在软件中提供相关链接
本软件仅围绕n2 ...