# smart-rwl/idm-activation-script architecture

> Architecture diagram of the GitHub repository smart-rwl/idm-activation-script, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-28). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/smart-rwl/idm-activation-script
- Repository: https://github.com/smart-rwl/idm-activation-script

## Overview

IASL is a Windows command-script tool whose documented workflow is to elevate, present a menu, and perform IDM download, registry cleanup, activation, and extension-registration tasks. The README also describes version validation and a combined activation-plus-extension option. Source excerpts were unavailable, so the relationships below reflect only those documented behaviors; implementation details are not inferred.

Main entry points: [`IASL.cmd`](https://github.com/smart-rwl/idm-activation-script/blob/main/IASL.cmd) (Menu and validation), [`src/data.bin`](https://github.com/smart-rwl/idm-activation-script/blob/main/src/data.bin) (Activated IDM executable), [`src/dataHlp.bin`](https://github.com/smart-rwl/idm-activation-script/blob/main/src/dataHlp.bin) (IDM help executable), [`src/registry.bin`](https://github.com/smart-rwl/idm-activation-script/blob/main/src/registry.bin) (Activation registry values)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_control["Script workflow"]
  node_script["Menu and validation<br/>[IASL.cmd]"]
  node_download["IDM download<br/>[IASL.cmd]"]
end

subgraph group_activation["IDM activation"]
  node_activate["Activation task<br/>[IASL.cmd]"]
  node_idmexe["Activated IDM executable<br/>[data.bin]"]
  node_helpfile["IDM help executable<br/>[dataHlp.bin]"]
  node_regvalues["Activation registry values<br/>[registry.bin]"]
end

subgraph group_configuration["Registry and extensions"]
  node_cleanup["Registry cleanup<br/>[IASL.cmd]"]
  node_extensions["Extension registration<br/>[IASL.cmd]"]
  node_extensiondata["Extra file extensions<br/>[extensions.bin]"]
end

node_user(("User"))
node_release["IDM release"]
node_windows["Windows system"]

node_user -->|"runs"| node_script
node_script -->|"dispatches"| node_download
node_download -->|"downloads"| node_release
node_script -->|"dispatches"| node_cleanup
node_cleanup -->|"cleans registry"| node_windows
node_script -->|"dispatches"| node_activate
node_activate -->|"copies"| node_idmexe
node_activate -->|"copies"| node_helpfile
node_activate -->|"applies"| node_regvalues
node_activate -->|"updates registry"| node_windows
node_script -->|"dispatches"| node_extensions
node_extensions -->|"applies"| node_extensiondata
node_extensions -->|"updates registry"| node_windows

click node_script "https://github.com/smart-rwl/idm-activation-script/blob/main/IASL.cmd"
click node_download "https://github.com/smart-rwl/idm-activation-script/blob/main/IASL.cmd"
click node_cleanup "https://github.com/smart-rwl/idm-activation-script/blob/main/IASL.cmd"
click node_activate "https://github.com/smart-rwl/idm-activation-script/blob/main/IASL.cmd"
click node_idmexe "https://github.com/smart-rwl/idm-activation-script/blob/main/src/data.bin"
click node_helpfile "https://github.com/smart-rwl/idm-activation-script/blob/main/src/dataHlp.bin"
click node_regvalues "https://github.com/smart-rwl/idm-activation-script/blob/main/src/registry.bin"
click node_extensions "https://github.com/smart-rwl/idm-activation-script/blob/main/IASL.cmd"
click node_extensiondata "https://github.com/smart-rwl/idm-activation-script/blob/main/src/extensions.bin"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_script,node_download,node_user toneBlue
class node_activate,node_idmexe,node_helpfile,node_regvalues toneAmber
class node_cleanup,node_extensions,node_extensiondata toneMint
class node_release,node_windows toneIndigo
```

## Components

### Script workflow

- [Menu and validation](https://github.com/smart-rwl/idm-activation-script/blob/main/IASL.cmd): `IASL.cmd`
- [IDM download](https://github.com/smart-rwl/idm-activation-script/blob/main/IASL.cmd): `IASL.cmd`

### IDM activation

- [Activation task](https://github.com/smart-rwl/idm-activation-script/blob/main/IASL.cmd): `IASL.cmd`
- [Activated IDM executable](https://github.com/smart-rwl/idm-activation-script/blob/main/src/data.bin): `src/data.bin`
- [IDM help executable](https://github.com/smart-rwl/idm-activation-script/blob/main/src/dataHlp.bin): `src/dataHlp.bin`
- [Activation registry values](https://github.com/smart-rwl/idm-activation-script/blob/main/src/registry.bin): `src/registry.bin`

### Registry and extensions

- [Registry cleanup](https://github.com/smart-rwl/idm-activation-script/blob/main/IASL.cmd): `IASL.cmd`
- [Extension registration](https://github.com/smart-rwl/idm-activation-script/blob/main/IASL.cmd): `IASL.cmd`
- [Extra file extensions](https://github.com/smart-rwl/idm-activation-script/blob/main/src/extensions.bin): `src/extensions.bin`

### Other components

- **User**
- **IDM release**
- **Windows system**

## Connections

- User → Menu and validation: runs
- Menu and validation → IDM download: dispatches
- IDM download → IDM release: downloads
- Menu and validation → Registry cleanup: dispatches
- Registry cleanup → Windows system: cleans registry
- Menu and validation → Activation task: dispatches
- Activation task → Activated IDM executable: copies
- Activation task → IDM help executable: copies
- Activation task → Activation registry values: applies
- Activation task → Windows system: updates registry
- Menu and validation → Extension registration: dispatches
- Extension registration → Extra file extensions: applies
- Extension registration → Windows system: updates registry
