177211334 1.6.0

dotnet add package 177211334 --version 1.6.0
                    
NuGet\Install-Package 177211334 -Version 1.6.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="177211334" Version="1.6.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="177211334" Version="1.6.0" />
                    
Directory.Packages.props
<PackageReference Include="177211334" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add 177211334 --version 1.6.0
                    
#r "nuget: 177211334, 1.6.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package 177211334@1.6.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=177211334&version=1.6.0
                    
Install as a Cake Addin
#tool nuget:?package=177211334&version=1.6.0
                    
Install as a Cake Tool

Icon

Rox 是一个使用 C# .NET Framework 4.7.2 编写,并使用 Microsoft Visual Studio 2022 编译的跨平台动态链接库。它提供了多种功能模块,包括日志记录、文件操作、网络检查、Windows 系统配置、AI 集成,音频解密等。


📜 License / 许可证

This project is licensed under AGPL-3.0 + Attribution + Non-Commercial terms.

  • 🔍 You must:
    • Keep original author attribution and repository link.
    • Open-source any modified versions under AGPL-3.0.
  • 🚫 You cannot:
    • Use this code (or derivatives) for commercial purposes.
  • 📂 See LICENSE for full terms.

本项目采用 AGPL-3.0 + 署名 + 非商业附加条款 许可协议。

  • 🔍 您必须:
    • 保留原始作者署名及仓库链接。
    • 任何修改后的版本必须以 AGPL-3.0 协议开源。
  • 🚫 您不得:
    • 将此代码(或衍生作品)用于商业用途。
  • 📂 完整条款参见 LICENSE。

目录

  1. 日志
  2. 自定义下载
  3. 安全软件检测
  4. 网络
  5. Windows系统相关配置
  6. AI
  7. 文件
  8. Windows身份验证
  9. 检查更新模块
  10. 文本类处理
  11. API查询
  12. 音乐解密
  13. Node.js
  14. 发送Windows通知

此方法要求系统版本为 Windows 10 以上

1. 日志

控制台打印彩色日志

Rox.Runtimes.LogLibries.WriteLog.Info(LogKind logkind,string message);
Rox.Runtimes.LogLibries.WriteLog.Warning(LogKind logkind,string message);
Rox.Runtimes.LogLibries.WriteLog.Error(string message);
Rox.Runtimes.LogLibries.WriteLog.Debug(string message);
  • LogKind 可用枚举: Process,Task,Service,Registry,Network,PowerShell,Form,System,Thread, Json, Regex, Downloader.

写入日志到文件

Rox.Runtimes.LogLibries.LogToFile(LogLevel loglevel,LogKind logkind, string message);
Rox.Runtimes.LogLibries.LogToFile(LogLevel loglevel, string message);

调用此方法时,会程序目录下创建Assistant.log日志文件,并会以下格式写入文件

$"{DateTime.Now:yyyy-MM-dd HH:mm:ss} [{logLevel}] [{logkind}]: {message}";

清空日志

Rox.Runtimes.LogLibries.ClearFile(string filePath);
  • filepath: 日志文件路径

2. 自定义下载

Rox.DownloadAssistant.Downloader(string url);
Rox.DownloadAssistant.Downloader(string[] url);
Rox.DownloadAssistant.Downloader(string url,string location);
Rox.DownloadAssistant.Downloader(string url,string location);
Rox.DownloadAssistant.Downloader(string url,string location,bool log);
+2 重载...
  • url(s): 下载链接

  • location: 下载位置

  • log : 是否启用日志输出

当bool为true时,日志会输出到程序目录下的aria2c.log文件内,反之false则不会.


3. 安全软件检测

Rox.Security.Is360SafeRunning();
Rox.Security.IsHuorongSecurityRunning();
  • 返回值: true 表示安全软件正在运行,false 表示未运行。

4. 网络

网络可用性检查

Rox.Runtimes.Network_I.IsNetworkAvailable();
  • 返回值: true 表示网络可用,false 表示网络不可用。

5. Windows系统相关配置

此操作执行后可能会影响系统性能和安全。

启用/禁用休眠

Rox.Windows.Hibernate.Enable(); //启用休眠
Rox.Windows.Hibernate.Disable(); //禁用休眠

启用卓越性能

Rox.Windows.EnableHighPowercfg(); //启用卓越性能

启用/禁用Windows 安全中心与Windows Defender

Rox.Security.WindowsSecurityCenter.Enable() //启用
Rox.Security.WindowsSecurityCenter.Disable() //禁用

检查 Windows Update状态

bool status = Rox.Windows.WindowsUpdate.CheckStatus();
  • 返回类型: bool
  • 返回值: 已禁用更新返回false.已启用更新返回true,键值不存在或遇到未知错误返回false

激活 Windows

Rox.Windows.ActiveWindows(); //激活Windows

通过 "irmhttps://get.activated.win | iex" 下载激活脚本完成激活


写入注册表

Rox.Runtimes.Registry_I.Write(string keyPath,string valueName,object valueData,RegistryValueKind valueType);
  • keyPath: 设定注册表路径

  • valueName: 设定注册表项名称

  • RegistryKind可用枚举: DWord,QWord,String等,详细帮助请查看官方界面

  • valueType:设定注册表项内数据类型

  • valueData:设定注册表项内数据 <br>

6. 文件

文件属性修改

Rox.Runtimes.File_I.FileProperties(string path, Properties key, bool Enable);
  • path: 文件的路径
  • Properties 可用枚举: System(设置文件为系统文件),Hidden(设置文件为受保护的隐藏文件),Readonly(设置文件为只读),Archive(设置文件为可存档文件).
  • key: 文件属性
  • Enable: 启用或取消属性: 设置为true时,给出的命令为+r(示例);设置为false时,给出的命令为-r(示例).

MD5哈希值验证

Rox.Runtimes.File_I.CheckFileHash(string filePath, string expectedMD5);
  • filePath: 文件路径
  • expectedMD5: 期望的MD5哈希值
  • 返回类型: bool
  • 返回值: 文件的MD5哈希值与期望的MD5哈希值相同时,返回true,反之则为false.

获取文件MD5哈希值

Rox.Runtimes.File_I.CalculateMD5(string filePath);
  • filePath: 文件路径
  • 返回类型: string
  • 返回值: 文件的MD5哈希值

7. Windows 身份验证

Rox.Windows.Authentication();
  • 返回类型: bool
  • 返回值: true 表示验证成功,false 表示取消操作

8. 文本类处理

加密 / 解密字符串

Rox.Text.EncryptString(string str); //加密
Rox.Text.DecryptString(string str); //解密
  • str: 要加密或解密的字符串
  • 返回类型: string
  • 返回值: 加密或解密后的字符串

在加密或解密之前, Rox会先解包 Node.js, 使用Node.js执行js脚本进行加解密


Json反序列化

Rox.Text.Json.DeserializeObject<T>(string json);
Rox.Text.Json.DeserializeObject(string json);
  • json: Json字符串*
  • 返回类型: <T> <dynamic>
  • 返回值: 返回反序列化后的对象

注: <dynamic> 已经包含在 DeserializeObject(string json) 方法中,因为返回类型是 <dynamic>,所以不需要额外的方法。


Json序列化

Rox.Text.Json.SerializeObject(object obj);
  • obj: 对象
  • 返回类型: string
  • 返回值: 返回序列化后的Json字符串

9. API查询

Steam个人信息查询(兼容v1)(可等待)

Rox.API.SteamUserData.GetDataJson(string SteamID);
Rox.API.SteamUserData_v1.GetDataJson_v1(string SteamID);

var type = await Rox.API.SteamUserData.GetDataJson(SteamID);
var info = type.$SteamType$;
  • steamID: SteamID,支持SteamID3,ID64,个人主页链接,自定义URL,好友代码
  • $SteamType$: 实际的 SteamType 属性
  • 返回类型: Json
  • 返回值: 返回Steam用户信息 <br><br> 举个例子: 获取好友代码及多个数值
var type = await Rox.API.SteamUserData.GetDataJson("7656xxxxxxxx"); // 先获取返回的Json

string FriendCode = type.friendcode; // 提取好友代码属性值
strike username = type.username; //提取用户名属性值
...

附: SteamType类属性

属性 注释 返回类型
code HttpClient返回值 (200成功,432无玩家信息,443无效的输入) int
communityvisibilitystate ⚠仅v1 社区隐私状态 int
communitystate ⚠不兼容v1 社区隐私状态 string
steamID ⚠不兼容v1 SteamID ( STEAM_0:1:xxxxxxxx ) string
steamID3 ⚠不兼容v1 SteamID3 ( [U:1:xxxxxxx] ) string
steamID64 ⚠不兼容v1 SteamID64 ( 7656xxxxxxxx ) string
steamid ⚠仅v1 SteamID64 ( 7656xxxxxxxx ) string
username ⚠不兼容v1 用户名 string
personaname ⚠仅v1 用户名 string
realname 真实姓名 string
profileurl ⚠️个人主页链接, 原生属性使用会带有转义字符(https:\/\/)
profileurl_1 ✔️个人主页链接, 使用此属性可输出无转义符的网址
avator ⚠️头像链接, 原生属性使用会带有转义字符(https:\/\/)
avator_1 ✔️个人主页链接, 使用此属性可输出无转义符的网址
accountcreationdate 账号创建时间
lastlogoff ⚠不兼容v1 上次登出时间
location 账号绑定区域
onlinestatus 在线状态
friendcode ⚠不兼容v1 好友代码
profilestate ⚠仅v1 如果属性返回 1 代表用户已经填写了个人资料

Steam个人信息 - 直接方法调用 (可等待)

以下内容返回类型均为string

string text = await Rox.API.SteamUserData.$void$(string SteamID);

举个例子:
 string name = await Rox.API.SteamUserData.GetUserNameString("7656xxxxxxxx"); // 获取用户名
 string avator = await Rox.API.SteamUserData.GetAvatarString("7656xxxxxxxx"); // 获取头像链接
 ...
  • $void$: 实际的直接调用方法
  • steamID: SteamID,支持SteamID3,ID64,个人主页链接,自定义URL,好友代码

通过对此类方法组的调用可以直接获取到字符串, 不用进一步解析Json

附: 直接调用方法列表

方法 返回值 注释
GetCommunityState 目前状态 获取社区状态
GetSteamIDString SteamID 获取SteamID
GetSteamID3String SteamID3 获取SteamID3
GetUserNameString 用户名 获取Steam用户名
GetSteamID64String SteamID64 获取SteamID64
GetSteamProfileUrlString URL 获取Steam个人主页链接地址
GetAvatarString URL 获取Steam头像链接地址
GetAccountCreationDateString 日期 获取账号创建日期
GetLastLogoffString 日期 获取账号最后登出时间
GetLocationString 国家或地区 获取账号绑定区域
GetOnlineStatusString 目前状态 获取在线状态
GetFriendCodeString 好友代码 获取好友代码
GetRealNameString 真实姓名 获取真实姓名

天气查询(可等待)

var allweather = await Rox.API.Weather.GetWeatherDataJson(string city);//获取返回的Json
string type = allweather.$WeatherType$; //获取属性值

举个例子:
var allweather = await Rox.API.Weather.GetWeatherDataJson("东城区");
string temperature = allweather.temperature_1; //获取气温属性值
  • $WeatherType$: 实际的 WeatherType 属性
  • city: 指定的地区
  • 返回类型: Json
  • 返回值: 天气信息

附: WeatherType属性

属性 注释
code ⚠️此属性为int类型 HttpClient返回值 (200成功,500未查询到城市,400空输入,0非法/不安全的请求)
province 省份名称
city 城市名称
temperature 气温⚠️此属性不输出单位 请使用temperature_1获取更好体验
temperature_1 气温 ✔️ 此属性输出带有单位的字符串
weather 天气状况
wind_direction 风向 ⚠️此属性不输出单位 请使用wind_direction_1获取更好体验
wind_direction_1 风向 ✔️此属性输出带有单位的字符串
wind_power 风力等级 ⚠️此属性不输出单位 请使用wind_power_1获取更好体验
wind_power_1 风力等级 ✔️此属性输出带有单位的字符串
humidty 湿度 ⚠️此属性不输出单位 请使用humidty_1获取更好体验
humidty_1 湿度 ✔️此属性输出带有单位的字符串
reporttime 天气的更新时间
msg 错误信息

天气查询 - 直接方法调用

以下内容返回类型均为string

var text = await Rox.API.Weather.$void$(string city);

举个例子:
var temperature = await Rox.API.Weather.GetTemperature("东城区"); // 获取北京市东城区的气温
var weather = await Rox.API.Weather.GetWeather("黑河市"); //获取黑龙江省黑河市的天气状况
...
  • $void$: 实际的直接调用方法
  • city: 指定的地区

通过对此类方法组的调用可以直接获取到字符串, 不用进一步解析Json

附: 直接调用方法列表

方法 返回值 注释
GetTemperature 温度 ℃ 获取指定地区的温度
GetWeather 天气 获取指定地区的天气
GetWindDirection 风向 风 获取指定地区的风向
GetWindPower 风力 级 获取指定地区的风力
GetHumidity 湿度 % 获取SteamID64

13. 音乐解密

裤猫音乐解密

请勿将此项目用于商业用途, 如造成的财产和版权损失与开发者改不相关

Rox.Audio.ParseKGG.ChooseSigleKGGFile(); // 选择单一文件进行解密.kgg加密格式音频
Rox.Audio.ParseKGG.ReadKGGFiles(string filepath); //选择文件夹进行识别格式解密.kgg加密格式音频
Rox.Audio.ParseKGM.ChooseSigleKGMFile(); // 虚着呢单一文件进行解密.kgm加密格式音频
Rox.Audio.ParseKGM.ReadKGMFiles(string filepath); //选择文件夹进行识别格式解密.kgm加密格式音频
  • filepath: 文件夹

14. Node.js

提取Node.js

string _return = Rox.Runtimes.NodeJs.ExtractNodeJs(string ExtarctFolder); //提取Node.js到指定文件夹

Node.js版本为node-v22.15.1-win-x86,使用32位

  • ExtractFolder: 指定被提取的文件夹
  • 返回类型: string
  • 返回值: 参数为null或路径不合法返回Error并弹出MessageBox, 如果文件夹已经存在node.exe或提取完成返回Node.js文件路径, 资源未找到返回_RES_FILE_NOT_FIND本地化字符串, 提取失败返回PowerShell进程退出码.

检查Node.Js是否存在

Rox.Runtimes.NodeJs.CheckNodeJs(string ExtraedFolder); //检查文件夹内有没有提取过的Node.js
  • ExtractedFolder: 指定提取过的文件夹
  • 返回类型: string
  • 返回值: 参数为null或路径不合法返回Error并弹出MessageBox, 如果文件夹已经存在node.exe或提取完成返回Node.js文件路径, 资源未找到返回_RES_FILE_NOT_FIND本地化字符串, 提取失败返回PowerShell进程退出码.

15. 发送Windows通知

此功能要求系统版本为Windows 10以上

Rox.Runtimes.WindowsToast.PostToastNotification(string title, string content);
  • title: 发送通知的标题
  • content: 发送通知的内容

暂不支持图片, 后续会加入

发送通知前会在本地的 bin 文件夹下生成 WindowsToast.exe 用来发送通知

There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.6.0 466 9/19/2025 1.6.0 is deprecated because it is no longer maintained.

Summary of changes made in this release of the package.