CodingWonders / DISMTools

The connected place for Windows system administration

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Product image


DISMTools is a front-end for DISM that lets you manage your Windows Imaging (WIM) files and a whole lot more.

About this project

This project was created simply because of the lack of free, open-source, and updated graphical interfaces for DISM. Before this tool was started, these popular UIs were available:

  • NTLite, which is the most popular offering. This software is free, but puts certain features (like downloading OS and program updates) behind a paywall, so it may not be for you if you are looking for a free, fully-featured program
  • MSMG Toolkit, which is one popular alternative. This is free and open-source (given that it is a script), but it may not be easily accessible for download, and may not be intuitive given its command-line user interface (TUI)
  • DISM GUI, the first popular, .NET powered GUI that lets you perform a couple of actions with your Windows images. While it is open-source (with its source code available on GitHub), it has not been updated since 2017
  • DISM++, another fully-featured, CBS-powered GUI. However, it has not been updated since 2023 and it is not open-source (even though there is a GitHub repository, it is only meant for the website and language translations)

There are also more GUIs for DISM, but they are way less known, so they are not mentioned here. Given this situation, this project was created to be a viable alternative to NTLite that was free, open-source, easily accessible, and constantly updated.

Key features

Working with projects

DISMTools is the first project-based GUI. Projects store the mounted image and unattended answer files you want to apply (using the command line at this time), while also providing a scratch directory for temporary operations.

Manage your active installation, or installations on any drive

With the online and offline installation management modes, you can easily manage any installation of a modern Windows version.

Compatibility and performance go hand in hand

Unlike other user interfaces for DISM that use either the DISM API or the DISM executable, DISMTools uses both, providing great performance to get the information you want from your images and installations quickly, and compatibility, allowing you to use any version of the DISM program, ranging from the Windows 7 version all the way up to the latest versions in Windows 10 and 11, so that your existing command-line workflows are not affected when you move to the graphical interface.

An advanced front-end

DISMTools isn't just a front-end for DISM, but an advanced one. As you perform tasks with your images and installations, you're presented with rich information and functionality. Here are some examples:

  • Rich information during AppX package addition. When adding an AppX package, you'll see rich information and, in most cases, the main Store logo asset:

  • Download content from App Installer packages automatically. Have an App Installer package? No problem. Add it, and DISMTools will download the main package and use it automatically:

  • Automatic detection of sources from Group Policy. If you want to enable a feature, repair the component store of a Windows image, or add a capability, with a source defined in the Group Policy; you can easily use it:

  • Easily create configuration lists. With the DISM Configuration List Editor you can quickly create your configuration list to exclude certain items during operations like capturing an image:

  • Quickly manage all your mounted images in one interface. The mounted image manager lets you perform basic image management tasks with your mounted images:

  • Generate and print image information easily. With image information reports, you can save the information of one area or all areas of the Windows image you're servicing for future reference:

Supported actions

The following actions are supported by DISMTools:

This program is in beta stages, so not every possible action is implemented. Check the "Unsupported actions" section for more details

  • Image management
    • WIM/SWM/ESD file application
    • Image capture
    • Image commits
    • Volume image removal (removal of unnecessary Windows editions)
    • Image mounting and unmounting
    • Image servicing session reloads
    • Image index switches
    • WIM -> ESD and viceversa conversion
    • SWM file merger
    • Component cleanup
    • Image splitting
  • OS packages and features
    • Package addition and removal
    • Feature enablement and disablement
  • AppX package servicing
    • Application addition and removal
  • Capabilities
    • Capability addition and removal
  • Drivers
    • Driver addition and removal
  • Provisioning packages
    • Add provisioning packages to an image
  • Other
    • Get complete information of an image
    • Using the project's or program's scratch directory
    • Get information of packages, features, AppX packages, capabilities, and drivers
    • Configure Windows PE settings
    • Basic automation

Unsupported actions

  • Regional settings
  • Applying unattended answer files
  • and more, it's in beta stages

These actions will be supported in future releases. They aren't implemented yet because it takes time to create working implementations that don't conflict with the rest of the program

System requirements

DISMTools is compatible with the following operating systems:

  • Client: Windows 8.1 and later (excluding Windows 10 versions 1507 and 1511)
  • Server: Windows Server 2012 and later (excluding Server Core variants)

Note

DISMTools is not compatible with Windows 7/Server 2008 R2 (versions 0.2.1 onwards), Wine, or ReactOS

Downloading

You can download DISMTools from the Releases section (recommended), from Softpedia, or from WinGet:

  • Stable version: winget install CodingWondersSoftware.DISMTools.Stable (moniker: DISMTools)
  • Preview version: winget install CodingWondersSoftware.DISMTools.Preview (moniker: DISMTools-pre)

This program is also 100% Free.

Last updated: April 28, 2024 (Alexandra Sava)

The SourceForge project also keeps track of new releases in this repository, so you can download the latest releases from there as well.

Building

If you want to grab a copy straight from the source code, follow these instructions:

  1. Begin by either cloning the project or downloading a ZIP of the source code. Go to "Code", and select an option from there
  2. Prepare the NuGet packages by running nugetpkgprep.bat in the location you cloned the repository to
  3. Open the solution in Visual Studio 2012 or later
  4. Finally, go to "Build > Build solution", or press CTRL-Shift-B

Additional startup flags

To speed up testing, you can perform these steps before running the program from within Visual Studio:

  1. In the Solution Explorer, double-click My Project
  2. Go to the Debug tab
  3. Under the Startup options, type the following in the command line arguments text box: /nomig /noupd
  • /nomig skips setting migration
  • /noupd disables update check functionality

You should have this setting configured like this:

Contributions

If you want to contribute to this project, you can do so in many ways:

  • Code changes: changes that WILL make it to the next release. If you want to do these, please read the contribution guidelines
  • Documentation and/or artwork: if you like the visual side of things more, we recommend contributing to the help system! Check out the last section for instructions.

Testing the latest

We continue the development of the next version in the Preview branch. To go to it, select "dt_preview" from the branch list. Commits are done every day, and new builds are released every 2 weeks.

Stay in touch

Be sure to follow our official subreddit for release announcements and other cool stuff. Also, check out the My Digital Life discussion to know about features being worked on.

Contribute to the help system

We want your help to build a great help system for DISMTools. If you want to contribute to it, you can read more here.

About

The connected place for Windows system administration

License:GNU General Public License v3.0


Languages

Language:Visual Basic .NET 91.2%Language:Inno Setup 3.8%Language:PowerShell 2.4%Language:Batchfile 2.3%Language:C# 0.3%Language:HTML 0.0%