当前位置: 首页 > article >正文

如何使用.Net Reactor 批量加密 DLL

若在日常工作中加密操作的使用频率较高,每次启动程序并执行选择 DLL 文件等操作均会显得较为繁琐。在此,分享一种可提升操作效率的方法:通过命令行方式调用脚本,即可实现 DLL 或 Exe 文件的批量加密处理。具体操作如下:

下载NetReactor:下载链接(链接: https://pan.baidu.com/s/1B3oHvFZ83vzrYUmjne-foQ?pwd=1234

复制下面脚本:

# 设置 dotNET_Reactor 的路径
$dotnetReactorPath = "D:\Program Files (x86)\Eziriz\.NET Reactor\dotNET_Reactor.exe"# 检查 dotNET_Reactor 是否存在
if (-Not (Test-Path -Path $dotnetReactorPath)) {Write-Error "dotNET_Reactor.exe not found at: $dotnetReactorPath"exit 1
}# 定义需要处理的 DLL 文件所在目录
$inputDirectory = "D:\Protected\sourceDll" # 替换为你的 DLL 文件所在目录
$outputDirectory = "D:\Protected\ProtectedDLL" # 替换为目标输出目录# 检查目标输出目录是否存在,如果不存在则创建
if (-Not (Test-Path -Path $outputDirectory)) {New-Item -ItemType Directory -Path $outputDirectory | Out-Null
}# 定义加密函数
function Encrypt-Dll {param([string]$dllPath,[string]$outputPath)& $dotnetReactorPath -file "$dllPath" -targetfile "$outputPath" -necrobit 1 -control_flow_obfuscation 1if ($?) {Write-Host "Encryption successful for $dllPath"} else {Write-Error "Encryption failed for $dllPath"}
}# 递归获取输入目录及其子目录下的所有 DLL 文件
$dllFiles = Get-ChildItem -Path $inputDirectory -Filter "*.dll" -Recurse# 对每个 DLL 文件进行加密处理
foreach ($file in $dllFiles) {$dllFullPath = $file.FullName# 获取文件在输入目录中的相对路径$relativePath = $dllFullPath.Substring($inputDirectory.Length + 1)# 构建目标路径$outputFilePath = Join-Path -Path $outputDirectory -ChildPath ("Protected_" + $relativePath)# 获取目标文件的目录路径$outputDir = Split-Path -Path $outputFilePath -Parent# 检查目标目录是否存在,如果不存在则创建if (-Not (Test-Path -Path $outputDir)) {New-Item -ItemType Directory -Path $outputDir | Out-Null}Encrypt-Dll -dllPath $dllFullPath -outputPath $outputFilePath
}Write-Host "Batch encryption process completed."

使用步骤

        修改脚本中的路径

                将 $inputDirectory 替换为包含你的 .dll 文件的目录路径。

                将 $outputDirectory 替换为你希望保存加密后的 .dll 文件的目录路径。

                确保这两个路径在你的系统中是有效的。

        保存脚本

                将上述代码保存为一个 .ps1 文件,例如 EncryptDlls.ps1

        运行脚本

                打开 PowerShell。

                切换到脚本所在的目录,例如:

cd D:\Path\To\Your\Scripts

        运行脚本:

.\EncryptDlls.ps1

        注意事项

                确保你的 PowerShell 环境允许运行脚本。默认情况下,Windows 系统可能会限制脚本的运行,可以通过以下命令启用脚本执行:

Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process

                如果还不行,试试将 DOTNET_REACTOR 安装目录添加到系统环境变量,或者写全路径也可以。

http://www.lryc.cn/news/2395693.html

相关文章:

  • 基于视觉的车道线检测完整代码:让驾驶更安全的开源解决方案
  • Intellij IDEA 查找接口实现类的快捷键
  • 鸿蒙仓颉开发语言实战教程:自定义tabbar
  • 03.MySQL表的操作详解
  • 28 C 语言作用域详解:作用域特性(全局、局部、块级)、应用场景、注意事项
  • MySQL 事务解析
  • 题海拾贝:压缩字符串
  • 【Hive 运维实战】一键管理 Hive 服务:Metastore 与 HiveServer2 控制脚本开发与实践
  • 振动力学的三类基本问题
  • 04.MySQL数据类型详解
  • 移动端 UI自动化测试学习之Appium框架(包含adb调试工具介绍)
  • CS144 - Lecture 2
  • B站视频下载器 v1.0.4|免登录下载1080P视频
  • AIGC学习笔记(8)——AI大模型开发工程师
  • [蓝桥杯]剪格子
  • 明远智睿SSD2351开发板:语音机器人领域的变革力量
  • Mybtais框架各配置文件主要内容详解(一)
  • Co-IP—验证蛋白互作的不二之选
  • 数据可视化(第4、5、6次课)
  • DAY 18 推断聚类后簇的类型
  • 结合源码分析Redis的内存回收和内存淘汰机制,LRU和LFU是如何进行计算的?
  • ESG体系
  • 基于 KubeKey 3.1.9,快速部署 K8s 1.33.0 高可用集群
  • 华为深度学习面试手撕题:手写nn.Conv2d()函数
  • 归一化相关
  • STM32Cubemx-H7-17-麦克纳姆轮驱动
  • 机器学习算法-逻辑回归
  • Office 2024免费下载 安装包
  • Linux云计算训练营笔记day18(Python)
  • Git深入解析功能逻辑与核心业务场景流程