![图片[1]-IDM Activation Script免费激活-柔同小栈](https://www.5v0.cn/wp-content/uploads/2026/05/1606-1024x697.png)
概述
这是一个用于激活 Internet Download Manager (IDM) 的批处理脚本,通过修改注册表、锁定 CLSID 键值等方式实现 IDM 的激活或试用期冻结。
来源: https://github.com/Astro-Saurav/-IDM-Activation-Script
版本: 1.2
主要功能
| 功能 | 说明 |
|---|---|
| 激活 | 尝试完整激活 IDM |
| 冻结试用期 | 永久冻结 30 天试用期 |
| 重置激活/试用 | 清除所有激活相关注册表项 |
| 下载 IDM | 跳转官方下载页面 |
| 帮助 | 跳转 GitHub 页面 |
技术原理
核心机制
- 注册表操作
- 删除/修改 IDM 存储的注册信息(序列号、邮箱等)
- 操作 CLSID 注册表键值
- CLSID 锁定
- 通过 PowerShell 分析 IDM 创建的 CLSID 键
- 识别特征键(包含数字、特殊字符、特定值名如 MData/Model/scansk/Therad)
- 删除或设置权限拒绝访问(锁定)
- 模拟下载
- 触发 IDM 下载特定图片文件
- 让 IDM 自动生成需要操作的注册表键
关键注册表路径
registry
; x86 系统 HKCU\Software\Classes\CLSID HKU\%sid%\Software\Classes\CLSID ; x64 系统 HKCU\Software\Classes\Wow6432Node\CLSID HKU\%sid%\Software\Classes\Wow6432Node\CLSID ; IDM 配置 HKLM\SOFTWARE\Wow6432Node\Internet Download Manager HKCU\Software\DownloadManager
使用方式
命令行参数
cmd
IDM-Activation-Script.cmd /act # 激活 IDM-Activation-Script.cmd /frz # 冻结试用期 IDM-Activation-Script.cmd /res # 重置
修改脚本内部变量
batch
set _activate=1 ; 激活模式 set _freeze=1 ; 冻结模式 set _reset=1 ; 重置模式
交互菜单
运行脚本无参数时显示菜单:
text
[1] Activate - 激活 [2] Freeze Trial - 冻结试用期 [3] Reset - 重置 [4] Download IDM - 下载 [5] Help - 帮助 [0] Exit - 退出
执行流程
flowchart TD
A[启动脚本] --> B{检查管理员权限}
B -->|无| C[请求提权]
C --> B
B -->|有| D[检查系统环境]
D --> E{检查参数/菜单}
E -->|/act| F[激活模式]
E -->|/frz| G[冻结模式]
E -->|/res| H[重置模式]
E -->|无参数| I[显示菜单]
I --> J[用户选择]
J --> F & G & H
F --> K[备份注册表]
G --> K
H --> K
K --> L[删除IDM注册表项]
L --> M{模式判断}
M -->|激活| N[写入假注册信息]
M -->|冻结| O[跳过注册信息]
M -->|重置| P[结束]
N --> Q[触发IDM下载]
Q --> R[扫描并处理CLSID]
O --> R
R --> S[完成]
代码结构分析
1. 环境初始化
batch
set "PATH=%SystemRoot%\System32;..." ; 设置环境变量 set _cmdf=%~f0 ; 保存脚本路径
特点:
- 自动检测并提升到管理员权限
- 支持 x86/x64/ARM64 架构重定向
- 检查 Null 服务运行状态
2. 架构适配
| 架构 | CLSID 路径 |
|---|---|
| x86 | HKCU\Software\Classes\CLSID |
| x64 | HKCU\Software\Classes\Wow6432Node\CLSID |
3. PowerShell 内嵌代码
脚本使用 :regscan: 标记内嵌 PowerShell 代码:
powershell
# 扫描 CLSID 键的识别逻辑 if ($defaultValue -match "^\d+$") # 默认值为纯数字 if ($defaultValue -match "\+|=") # 包含 + 或 = if ($versionValue -match "^\d+$") # Version 子键为数字 if ($_.Name -match "MData|Model|scansk|Therad") # 特定值名
4. 权限操作函数
powershell
function Take-Permissions {
# 使用 RtlAdjustPrivilege 提升权限
# 设置所有者、ACL
# 锁定模式时设置拒绝访问规则
}
激活原理详解
激活模式
- 删除现有注册表项
- 写入随机生成的假注册信息:
- FName/LName: 随机 1000-9999 数字
- Email:
{fname}.{lname}@tonec.com - Serial: 格式
XXXXX-XXXXX-XXXXX-XXXXXX(20位随机字母数字)
- 触发 IDM 下载图片 → 自动生成 CLSID 键
- 扫描并锁定/删除这些 CLSID 键
冻结模式
- 执行相同流程,但不写入注册信息
- 只锁定 CLSID 键,阻止 IDM 检测试用期状态
重置模式
- 仅删除注册表项,不写入新数据
防御机制(反检测)
| 技术 | 说明 |
|---|---|
| CLSID 锁定 | 设置 ACL 拒绝访问,IDM 无法读取/写入 |
| 所有权转移 | 将键所有者设为 S-1-0-0(NULL SID) |
| 批量处理 | 超过 20 个键时自动切换为删除模式 |
| 注册表备份 | 操作前备份到 %SystemRoot%\Temp |
依赖条件
系统要求
- Windows 7 / 8 / 8.1 / 10 / 11 及对应 Server 版本
- PowerShell(用于高级注册表操作)
- WMI(用于获取 SID)
网络要求
- 能访问
internetdownloadmanager.com(用于下载测试文件和 ping)
权限要求
- 管理员权限(必需)
潜在问题
常见错误
| 错误信息 | 原因 | 解决 |
|---|---|---|
| Null service is not running | Null 服务未运行 | 脚本可能崩溃 |
| PowerShell is not working | PowerShell 受限 | 检查执行策略 |
| WMI is not working | WMI 损坏 | 修复 WMI |
| Failed to write in CLSID | 权限不足 | 检查管理员权限 |
已知限制
- 某些 IDM 版本可能检测到假序列号并显示”假冒序列号”弹窗
- 官方建议使用冻结模式代替完整激活
- IDM 更新后可能需要重新执行脚本
安全考虑
脚本操作内容
- ✅ 备份注册表到 Temp 文件夹
- ✅ 仅修改 IDM 相关注册表项
- ✅ 无网络外联(除 IDM 官方下载链接)
- ⚠️ 需要管理员权限
- ⚠️ 修改注册表 ACL(可能影响系统稳定性)
风险评估
- 低风险:仅影响 IDM 相关配置
- 中风险:注册表操作不当可能导致 IDM 异常
- 注意:建议操作前创建系统还原点
使用建议
- 优先选择”冻结试用期” – 比激活模式更稳定
- 重置后重新安装 IDM – 确保完全清除残留
- 备份重要数据 – 操作注册表前建议备份
- 关闭 IDM 进程 – 脚本会自动结束
idman.exe
免责声明
此脚本仅供学习研究使用。激活商业软件可能违反软件许可协议。使用者应自行承担相关责任。
相关链接
© 版权声明
THE END







