SQLite-backed persistence ensures your desktop layout survives reboots, Explorer crashes, and multi-monitor changes.
You've probably experienced this frustration: you spend time organizing your desktop icons perfectly, only to find them scrambled after:
RuleDock solves this by storing your layout in a robust SQLite database and restoring it automatically.
RuleDock continuously tracks icon positions and fence configurations, saving changes to SQLite in real-time.
When Explorer restarts, RuleDock detects the change and restores your layout within seconds—no manual intervention needed.
Each display is tracked separately with its own coordinate system. Connect or disconnect monitors without losing icon positions.
Positions are stored in a normalized coordinate system that handles DPI changes and scaling differences gracefully.
When Windows Explorer crashes (or you restart it manually), most desktop organizers lose track of your icons. RuleDock is different:
1. Explorer crashes or restarts
↓
2. RuleDock detects ListView handle is invalid
↓
3. Enters "reconnecting" state (UI shows status)
↓
4. Polls for new Desktop ListView handle
↓
5. Reconnects and loads layout from SQLite
↓
6. Restores all fence positions and icon mappings
↓
7. Resume normal operation (~2-5 seconds total)
This recovery happens automatically. You don't need to do anything.
RuleDock tracks each display independently using a combination of:
| Scenario | What RuleDock Does |
|---|---|
| Laptop undocked (external monitor removed) | Icons from external display are temporarily hidden, restored when you redock |
| New monitor added | Creates empty workspace, existing layouts untouched |
| Resolution changed | Recalculates positions relative to new bounds |
| DPI changed | Applies scaling factor to maintain relative positions |
| Monitors swapped (left↔right) | Detects by display ID, keeps layouts on correct screens |
RuleDock uses SQLite for reliable, fast persistence. The database includes:
-- Fences table
CREATE TABLE fences (
id INTEGER PRIMARY KEY,
name TEXT,
x REAL, y REAL,
width REAL, height REAL,
is_collapsed INTEGER,
is_pinned INTEGER,
opacity REAL,
display_id TEXT
);
-- Icon mappings
CREATE TABLE icon_map (
fence_id INTEGER,
icon_path TEXT,
original_x REAL,
original_y REAL
);
-- Layout snapshots for recovery
CREATE TABLE layout_snapshot (
timestamp TEXT,
data BLOB
);
The SQLite database is stored at:
%LOCALAPPDATA%\RuleDock\ruledock.db
You can back up this file to preserve your layout configuration.
Moving to a new computer? RuleDock supports layout export and import:
Download RuleDock and experience bulletproof desktop persistence.
Download RuleDock Free