MachineID-Manage is a Windows machine code management tool built with Rust + Tauri 2 + Vue 3. It allows you to read, backup, replace, and randomly generate Windows MachineGuid (machine identifier). The application provides a modern graphical interface to help users safely and efficiently perform system registry operations.
- 📖 Read Machine ID - Read MachineGuid from Windows registry
- 💾 Backup Management - Backup and manage machine code configurations with custom descriptions
- 🔄 Restore Backup - Restore machine code from backup
- 🎲 Random Generation - Generate random valid GUIDs with preview
- 🔧 Custom Replacement - Replace with custom machine code
- 📋 Copy Feature - One-click copy machine code to clipboard
- 🔒 Permission Detection - Real-time admin permission status
| Platform | Installer | Portable |
|---|---|---|
| Windows x64 | MachineID-Manage_2.2.0_x64-setup.exe | MachineID-Manage_2.2.0_windows_portable.zip |
| Windows MSI | MachineID-Manage_2.2.0_x64_en-US.msi | - |
Note: All downloads are available on the Releases page.
| Icon | Feature | Description |
|---|---|---|
| 📖 | Read Machine ID | Read MachineGuid from Windows registry |
| 💾 | Backup Management | Backup and manage machine code configurations |
| 📝 | Edit Description | Add or edit backup descriptions |
| 🔄 | Restore Backup | Restore machine code from backup |
| 🎲 | Random Generation | Generate random valid GUIDs with preview |
| 🔧 | Custom Replacement | Replace with custom machine code |
| 📋 | Copy Feature | One-click copy machine code to clipboard |
| 🔒 | Permission Detection | Real-time admin permission status |
| 🛡️ | Auto Backup | Automatic backup before modifications |
- Rust - Systems programming language
- Tauri 2 - Cross-platform application framework
- winreg - Windows registry operations
- tracing - Structured logging
- Vue 3 - Progressive JavaScript framework
- TypeScript - Type-safe JavaScript
- Vite - Next-generation frontend build tool
- Pinia - Vue state management
- Tailwind CSS - Utility-first CSS framework
- VueUse - Vue composition utilities
| Requirement | Details |
|---|---|
| OS | Windows 10/11 |
| Rust | 1.70 or higher |
| Node.js | 18+ (for development) |
| Admin Rights | Required for registry modifications |
- Download the latest
.msior.exeinstaller from Releases - Run the installer and follow the wizard
- Launch MachineID-Manage from the Start menu
- Download
MachineID-Manage_*_windows_portable.zipfrom Releases - Extract the ZIP file to your desired location
- Run
machineid-manage.exedirectly
Note: Portable version stores data in the
.datafolder within the application directory.
# Clone the repository
git clone https://github.com/luxiaosen8/MachineID-Manage.git
cd MachineID-Manage
# Install dependencies
npm install
# Start development server
npm run tauri:dev
# Build production version
npm run tauri:build- Read Machine ID - Automatically reads current MachineGuid on app startup
- Backup Machine ID - Click "Backup Machine ID" to save current machine code
- Edit Description - Click the edit icon on any backup to add/modify description
- Random Generation - Click "Random Generate" to create a new random GUID (preview shown before confirmation)
- Custom Replacement - Enter a valid GUID and confirm replacement
- Restore Backup - Select and restore from the backup list
MachineID-Manage/
├── src-tauri/ # Tauri backend (Rust)
│ ├── src/
│ │ ├── main.rs # Tauri command entry
│ │ ├── machine_id.rs # Machine ID read/write logic
│ │ └── platform/ # Platform-specific code
│ ├── Cargo.toml # Rust dependencies
│ ├── tauri.conf.json # Tauri configuration
│ └── icons/ # App icons
├── src/ # Vue 3 frontend
│ ├── components/ # Vue components
│ │ ├── ui/ # Base UI components
│ │ ├── layout/ # Layout components
│ │ ├── features/ # Feature components
│ │ └── modals/ # Modal components
│ ├── stores/ # Pinia state management
│ ├── types/ # TypeScript types
│ ├── utils/ # Utility functions
│ ├── styles/ # Global styles
│ ├── App.vue # Root component
│ └── main.ts # Entry file
├── package.json # Node.js dependencies
├── vite.config.ts # Vite configuration
├── tsconfig.json # TypeScript configuration
├── tailwind.config.js # Tailwind configuration
├── README.md # Project documentation (English)
├── README.zh-CN.md # Project documentation (Chinese)
├── LICENSE # MIT License
└── .github/workflows/ # CI/CD workflows
# Install dependencies
npm install
# Development mode (with hot reload)
npm run dev
# Tauri development mode
npm run tauri:dev
# Build production version
npm run build
# Tauri build
npm run tauri:build
# Run tests
npm run test
# Lint code
npm run lint
# Format code
npm run format- Install Rust
- Install Node.js 18+
- Install Tauri CLI:
cargo install tauri-cli - Clone the project and install dependencies
Warning
Modifying the Windows registry carries inherent risks. Always create a system backup before performing any operations.
| Icon | Measure | Description |
|---|---|---|
| 🔒 | Permission Detection | Checks admin rights before write operations |
| 💾 | Auto Backup | Automatically backs up before modifications |
| ✅ | User Confirmation | Dangerous operations require user confirmation |
| 📝 | Operation Logging | Records all registry modification operations |
| 🔍 | Input Validation | Validates GUID format before writing |
- Always Backup - Export and save your current MachineGuid before use
- Test First - Verify operations in a test environment
- Least Privilege - Grant admin rights only when necessary
- ✨ Version Auto-Sync - Version number now automatically syncs from Cargo.toml
- 🎯 GUID Preview Consistency - Preview value now matches the actual replacement value
- 🔄 Auto Refresh Backups - Backup list automatically refreshes after operations
- 📝 Edit Backup Description - Support for editing backup descriptions
- 📁 Data Storage Path - Changed to store data in
.datafolder within application directory - 🖱️ Disable Context Menu - Disabled browser context menu for native app experience
- 🔧 Fixed UAC Elevation Issue
- Replaced PowerShell-based elevation with native Windows API
ShellExecuteW - Improved error handling for UAC cancellation
- Added detailed error codes and messages
- Fixed admin restart functionality
- Enhanced stability and reliability
- 🎉 Major Refactoring Version
- Frontend fully upgraded to Vue 3 + TypeScript
- Replaced traditional build with Vite
- Introduced Pinia state management
- Tailwind CSS modern UI
- Full Tauri 2.0 support
- Added permission visualization
- Enhanced user experience
- Fixed Tauri v2 GitHub Actions workflow
- Version updated to 1.4.0
- Improved CI/CD process
- Initial stable version
- Basic machine code management features
- Backup and restore functionality
Contributions are welcome! Please read CONTRIBUTING.md for details.
This project is open-sourced under the MIT License. See the LICENSE file for details.
- GitHub: https://github.com/luxiaosen8/MachineID-Manage
- Issues: https://github.com/luxiaosen8/MachineID-Manage/issues
- Releases: https://github.com/luxiaosen8/MachineID-Manage/releases
Thank you for using MachineID-Manage!