{"id":50734441,"url":"https://github.com/mamamia0729/it-toolbox","last_synced_at":"2026-06-10T12:02:50.472Z","repository":{"id":316262372,"uuid":"1055259875","full_name":"mamamia0729/IT-ToolBox","owner":"mamamia0729","description":"Interactive Remote Management Utility - Your Complete IT Support Toolkit for PowerShell-based system administration","archived":false,"fork":false,"pushed_at":"2025-09-23T14:59:54.000Z","size":30,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-23T16:34:40.846Z","etag":null,"topics":["it-support","powershell","registry-management","remote-management","service-management","system-administration","windows-administration"],"latest_commit_sha":null,"homepage":"https://www.linkedin.com/in/thinh-le-608222185/","language":"PowerShell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mamamia0729.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-12T02:31:52.000Z","updated_at":"2025-09-23T14:59:57.000Z","dependencies_parsed_at":null,"dependency_job_id":"ab1b0c58-5dd6-4d08-b386-8ee52ea051fe","html_url":"https://github.com/mamamia0729/IT-ToolBox","commit_stats":null,"previous_names":["mamamia0729/it-toolbox"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/mamamia0729/IT-ToolBox","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mamamia0729%2FIT-ToolBox","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mamamia0729%2FIT-ToolBox/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mamamia0729%2FIT-ToolBox/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mamamia0729%2FIT-ToolBox/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mamamia0729","download_url":"https://codeload.github.com/mamamia0729/IT-ToolBox/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mamamia0729%2FIT-ToolBox/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34151276,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-10T02:00:07.152Z","response_time":89,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["it-support","powershell","registry-management","remote-management","service-management","system-administration","windows-administration"],"created_at":"2026-06-10T12:02:49.449Z","updated_at":"2026-06-10T12:02:50.466Z","avatar_url":"https://github.com/mamamia0729.png","language":"PowerShell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# IT-ToolBox 🧰\n\n[![PowerShell](https://img.shields.io/badge/PowerShell-5.1%2B-blue)](https://github.com/PowerShell/PowerShell)\n[![License](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE)\n[![Platform](https://img.shields.io/badge/Platform-Windows-lightgrey)](https://www.microsoft.com/en-us/windows)\n[![Version](https://img.shields.io/badge/Version-5.1-orange)](CHANGELOG.md)\n\n\u003e **Interactive Remote Management Utility** - Your complete IT support toolkit for managing Windows services, applying fixes, and recovering disk space on remote computers.\n\n## 🚀 Overview\n\nIT-ToolBox is a professional interactive PowerShell script designed for system administrators and IT support teams. It provides a user-friendly menu-driven interface for performing common remote management tasks with built-in safety features and comprehensive error handling.\n\n### 🎯 Key Features\n\n- **🔄 Continuous Operation Loop**: Perform multiple operations without restarting the script\n- **🎛️ Enhanced Interactive Menu**: User-friendly selection interface with return-to-menu capability\n- **👥 Advanced Session Management**: Manual session selection with account lockout prevention\n- **🔌 Smart Connectivity Testing**: Automatic ping and WMI/RPC validation with recovery options\n- **📊 Service Status Monitoring**: Before and after operation status checks\n- **🔧 Service Management**: Reliable remote service restart capabilities\n- **🗂️ Registry Operations**: Safe remote registry modifications\n- **💾 Disk Space Recovery**: Advanced MSP cleanup can free 100+ GB per machine\n- **⚡ Real-time Feedback**: Color-coded status messages and progress indicators\n- **🛡️ Enhanced Safety**: Multiple confirmation steps, graceful error handling, and recovery options\n- **🔄 Extensible Design**: Easy to add new operations and services\n\n## 📁 Repository Structure\n\n```\nIT-ToolBox/\n├── Scripts/                    # Main PowerShell scripts\n│   └── IT-ToolBox.ps1         # Primary interactive management tool\n├── Documentation/             # User guides and technical docs\n│   ├── USAGE.md              # Detailed usage instructions\n│   └── TROUBLESHOOTING.md    # Common issues and solutions\n├── Examples/                  # Usage examples and scenarios\n│   └── workflow-examples.md   # Step-by-step usage scenarios\n├── README.md                  # This file\n├── LICENSE                    # MIT License\n└── CHANGELOG.md              # Version history\n```\n\n## ✨ Current Operations\n\n### 1. 🖨️ Print Spooler Service Restart\n- **Service**: `Spooler`\n- **Purpose**: Resolves print queue issues and printer communication problems\n- **Common Issues Fixed**: Stuck print jobs, printer offline errors, spooler crashes\n\n### 2. 🖥️ Remote Desktop Services Restart  \n- **Service**: `TermService`\n- **Purpose**: Fixes Remote Desktop connection issues\n- **Common Issues Fixed**: RDP login failures, session timeout problems, connection refused errors\n\n### 3. 📄 Adobe Acrobat DC Sign-in Fix\n- **Type**: Registry Modification\n- **Purpose**: Stops persistent Adobe Acrobat DC sign-in prompts\n- **Registry Path**: `HKLM\\SOFTWARE\\Policies\\Adobe\\Adobe Acrobat\\DC\\FeatureLockDown`\n- **Value**: `bIsSCReducedModeEnforcedEx = 1 (DWORD)`\n\n### 4. 💾 Advanced MSP Cleanup\n- **Type**: Disk Space Recovery\n- **Purpose**: Cleans old MSP files from Windows Installer cache\n- **Target**: Files older than 7 days (aggressive cleanup)\n- **Potential Recovery**: 100+ GB of disk space per machine\n- **Features**: Progress tracking, size analysis, administrative share validation\n\n### 5. 👥 Remote Session Management **NEW!**\n- **Type**: Session Administration\n- **Purpose**: View active user sessions and logoff stale sessions (prevents account lockouts)\n- **Features**: \n  - Auto-cleanup mode for stale disconnected sessions (1+ days)\n  - Manual selection mode for choosing specific sessions to logoff\n  - View-only mode for monitoring sessions without changes\n  - Color-coded session display (Active/Disconnected/Stale)\n  - Graceful handling of systems with no active sessions\n- **Commands Used**: `quser /server:` and `logoff /server:` (WinRM-free compatibility)\n\n## 🚀 Quick Start\n\n### Prerequisites\n- Windows PowerShell 5.1 or later\n- Administrative privileges on both local and target machines\n- Network connectivity to target computers\n- WMI/RPC access to remote systems\n\n### Basic Usage\n\n```powershell\n# Simply run the script - no parameters needed!\n.\\Scripts\\IT-ToolBox.ps1\n\n# From PowerShell Core\npwsh -File .\\Scripts\\IT-ToolBox.ps1\n\n# From Command Prompt\npowershell.exe -File .\\Scripts\\IT-ToolBox.ps1\n```\n\n### 📋 Enhanced Interactive Workflow **NEW!**\n\nThe script now features a continuous operation loop with a 6-step process:\n\n1. **🎛️ Operation Selection**: Choose from available operations via interactive menu\n2. **🖥️ Target Specification**: Enter computer name or IP address\n3. **✅ Confirmation**: Confirm operation before execution\n4. **🔌 Connectivity Test**: Automatic connectivity validation with recovery options\n5. **⚡ Execution**: Perform selected operation with real-time feedback\n6. **🔄 Continue Choice**: Return to main menu or exit → **[Loop back to step 1]**\n\n**Key Enhancement**: No need to restart the script! Perform multiple operations seamlessly.\n\n## 📊 Usage Example\n\n```\nIT-ToolBox - Remote Management Utility\n====================================\nYour Complete IT Support Toolkit\n\nStep 1: Select operation to perform\n\nAvailable Operations:\n============================================================\n1. Print Spooler (Spooler)\n   Description: Manages print jobs and printer communication\n2. Remote Desktop Services (TermService)\n   Description: Enables Remote Desktop connections\n3. Adobe Acrobat DC Sign-in Fix (AdobeFix)\n   Description: Applies registry fix to stop Adobe Acrobat DC sign-in prompts\n4. Advanced MSP Cleanup (MSPCleanup)\n   Description: Cleans up old MSP files from Windows Installer cache (can recover 100+ GB)\n5. Remote Session Management (SessionManagement)\n   Description: View active user sessions and logoff stale sessions (prevents account lockouts)\n\nOptions:\nQ. Quit\n\nSelect operation to perform (1, 2, 3, 4, 5, or Q to quit): 5\n\nSelected operation:\n  - Remote Session Management (SessionManagement)\n\nStep 2: Specify target computer\nEnter the target computer name or IP address: PC001\n\nTarget Computer: PC001\n\nStep 3: Final confirmation\nProceed with 'Remote Session Management' on 'PC001'? (Y/N): Y\n\nStep 4: Testing connectivity\nTesting connectivity to PC001...\n[OK] Ping successful\n[OK] WMI/RPC connectivity successful\n\nStep 5: Executing operations\n\nStarting Remote Session Management on PC001...\nRetrieving active user sessions...\n\n[ACTIVE SESSIONS on PC001]\n USERNAME              SESSIONNAME        ID  STATE   IDLE TIME  LOGON TIME\n1. john                 rdp-tcp#0           2  Active          .  9/20/2025 8:30 AM\n2. mary                 rdp-tcp#1           3  Disc        5+00  9/18/2025 2:15 PM\n3. admin               console             1  Active       1:20  9/20/2025 9:45 AM\n\n[SESSION MANAGEMENT OPTIONS]\n1. Auto-cleanup stale sessions (disconnected 1+ days)\n2. Manually select sessions to logoff\n3. View only (no changes)\nQ. Return to main menu\n\nSelect option (1, 2, 3, or Q): 2\n\n[MANUAL SESSION SELECTION]\nAvailable sessions:\n1. User: john, ID: 2, State: Active, Idle: .\n2. User: mary, ID: 3, State: Disc, Idle: 5+00\n3. User: admin, ID: 1, State: Active, Idle: 1:20\n\nEnter session number(s) to logoff (comma-separated, or 'C' to cancel): 2\n\n[SELECTED SESSIONS FOR LOGOFF]\n  User: mary, ID: 3, State: Disc\n\nProceed to logoff 1 session(s)? (Y/N): Y\nLogging off session ID 3 (User: mary)...\n[SUCCESS] Logged off session ID 3\n\n[UPDATED SESSION LIST]\n USERNAME              SESSIONNAME        ID  STATE   IDLE TIME  LOGON TIME\n john                  rdp-tcp#0           2  Active          .  9/20/2025 8:30 AM\n admin                 console             1  Active       1:25  9/20/2025 9:45 AM\n[SUCCESS] Remote Session Management completed successfully\n\nOperation completed.\n\n[CONTINUE OPTIONS]\n1. Return to main menu (perform another operation)\n2. Exit IT-ToolBox\n\nSelect option (1 or 2): 1\n\nReturning to main menu...\n============================================================\n\n[Menu displays again for next operation...]\n```\n\n## 🔧 Technical Features\n\n### Remote Connectivity Testing\n- **Ping Test**: Verifies basic network connectivity\n- **WMI/RPC Test**: Ensures remote management capabilities\n- **Error Handling**: Graceful failure with detailed error messages\n\n### Service Management\n- **Status Monitoring**: Real-time service status checking\n- **Safe Restart Process**: Proper stop → wait → start sequence\n- **Timeout Protection**: Prevents indefinite waiting\n- **Verification**: Post-operation status confirmation\n\n### Registry Operations\n- **Remote Registry Access**: Secure connection to remote registry\n- **Key Creation**: Automatic registry path creation if needed\n- **Value Verification**: Confirms registry changes were applied\n- **Error Recovery**: Comprehensive exception handling\n\n### Disk Space Recovery Operations\n- **MSP File Analysis**: Intelligent analysis of Windows Installer MSP files\n- **Age-Based Targeting**: Focuses on files older than 7 days for safe cleanup\n- **Progress Tracking**: Real-time progress updates during cleanup operations\n- **Administrative Share Validation**: Ensures secure remote access before operations\n- **Size Calculations**: Shows potential and actual space recovery metrics\n\n## 🛡️ Safety Features\n\n- **🔐 Confirmation Prompts**: Multiple user confirmations before execution\n- **📡 Connectivity Validation**: Ensures target is accessible before operations\n- **⏱️ Timeout Protection**: Prevents hanging operations\n- **📝 Detailed Logging**: Comprehensive status reporting\n- **🔄 Status Verification**: Before and after operation validation\n- **❌ Graceful Failures**: Proper error handling and user notification\n\n## 📈 Extensibility\n\nThe script is designed for easy expansion. To add new operations:\n\n```powershell\n# Add to the $availableServices array in the script:\n,(New-Object PSObject -Property @{\n    Name = \"YourServiceName\"           # Windows service name or custom ID\n    DisplayName = \"Your Display Name\"  # User-friendly name\n    Description = \"What it does\"       # Brief description  \n    Type = \"Service\"                   # \"Service\", \"Registry\", or \"Custom\"\n})\n```\n\n### Recent Major Enhancements (v5.1) **NEW!**\n- **🔄 Continuous Operation Loop**: Perform multiple operations without restarting the script\n- **👥 Enhanced Session Management**: Manual session selection with account lockout prevention\n- **🛡️ Improved Error Handling**: Graceful handling of \"No User exists\" scenarios\n- **🎛️ Better User Experience**: Continue/exit options after each operation with menu return\n\n### Previous Major Enhancement (v4.0)\n- **💾 Advanced MSP Cleanup**: Revolutionary disk space recovery feature\n- **📊 Intelligent Analysis**: Smart file analysis with age and size reporting\n- **⚡ Progress Tracking**: Real-time progress updates during operations\n- **🛡️ Enhanced Safety**: Administrative share validation and user confirmations\n\n### Future Enhancement Ideas\n- **Additional Services**: DHCP, DNS, IIS, SQL Server services\n- **Batch Operations**: Multiple computers at once\n- **Advanced Disk Cleanup**: Additional file types and cleanup targets\n- **Configuration Management**: Save/load computer lists\n- **Logging System**: Detailed operation logs\n- **Reporting**: HTML/CSV reports of operations\n- **Remote File Operations**: File copy, deletion, permissions\n- **System Information**: Hardware/software inventory\n- **Health Checks**: System performance monitoring\n\n## 🔍 Real-World Applications\n\n### Help Desk Scenarios\n- **Print Issues**: \"Printer not responding\" → Restart Print Spooler\n- **Remote Access**: \"Can't RDP to server\" → Restart Remote Desktop Services  \n- **Adobe Problems**: \"Adobe keeps asking to sign in\" → Apply registry fix\n- **Disk Space Issues**: \"Server running out of space\" → Advanced MSP Cleanup (can recover 100+ GB)\n- **Account Lockouts**: \"User account keeps getting locked out\" → Remote Session Management (cleanup stale sessions)\n- **Session Issues**: \"Need to disconnect a specific user\" → Manual session selection and logoff\n\n### System Administration\n- **Maintenance Windows**: Quick service restarts during maintenance\n- **Troubleshooting**: Rapid diagnosis and resolution of common issues\n- **User Support**: Self-service tools for junior administrators\n\n### Enterprise Environment\n- **Standardized Procedures**: Consistent approach across all systems\n- **Documentation**: Built-in operation tracking and confirmation\n- **Safety**: Multiple safeguards prevent accidental system damage\n\n## 📚 Documentation\n\n- [**USAGE.md**](Documentation/USAGE.md) - Detailed usage instructions\n- [**TROUBLESHOOTING.md**](Documentation/TROUBLESHOOTING.md) - Common issues and solutions\n- [**CHANGELOG.md**](CHANGELOG.md) - Version history and updates\n- [**Examples**](Examples/) - Real-world usage scenarios\n\n## 🤝 Contributing\n\nContributions are welcome! Please feel free to submit pull requests for:\n- New service operations\n- Enhanced error handling\n- Additional safety features\n- Documentation improvements\n- Bug fixes\n\n## 📄 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## 👨‍💻 Author\n\n**Thinh Le** - System Network Administrator  \n- LinkedIn: [Connect with me](https://linkedin.com/in/thinh-le)\n- GitHub: [@mamamia0729](https://github.com/mamamia0729)\n- Expertise: PowerShell Automation, Remote Management, IT Support Solutions\n\n## 🏆 Key Achievements\n\n- **🔄 Continuous Operation Loop**: Revolutionary workflow - perform multiple operations seamlessly\n- **👥 Advanced Session Management**: Prevent account lockouts with intelligent session cleanup\n- **🎛️ User-Friendly Design**: Enhanced interactive menu system for non-PowerShell experts\n- **💾 Massive Disk Space Recovery**: Advanced MSP cleanup can recover 100+ GB per machine\n- **🛡️ Production-Ready**: Comprehensive error handling, recovery options, and safety features\n- **🔧 Extensible Architecture**: Easy to add new operations and services\n- **📊 Professional Presentation**: Color-coded feedback and detailed status reporting\n- **⚡ Efficient Operations**: Optimized remote management workflows without WinRM dependency\n- **🚀 Continuous Innovation**: Regular feature updates based on real-world enterprise needs\n\n---\n\n⭐ **If this tool helped you, please give it a star!** ⭐\n\n*\"Your Complete IT Support Toolkit\"* - Making remote system management efficient and safe.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmamamia0729%2Fit-toolbox","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmamamia0729%2Fit-toolbox","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmamamia0729%2Fit-toolbox/lists"}