Skip to content

CodingWonders/DISMTools

Repository files navigation

Product image


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

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.

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 (winget install CodingWondersSoftware.DISMTools.Stable). This program is also 100% Free.

Last updated: March 16, 2024 (Alexandra Sava)

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, do the following:

    1. Create your separate branch, based on the latest dt_pre_**** one (you don't want to work on your changes based on an outdated source tree). This will make sure your change can arrive in the next preview
    2. Clone the newly created branch or, if you already cloned the repository, fetch the origin (git fetch origin) and switch to your branch
    3. Work on your changes and test them. We want to make sure your changes work as expected, and there aren't any regressions because of them
    4. Commit your changes and create a pull request. If not set automatically, select the latest dt_pre_**** branch to merge the contents to it. We'll review your changes and, if they're ready, we'll merge them.
  • 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 Sunday.

However, if you want to download the latest release AS SOON AS the project is built with new changes, you can download the nightly installer.

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.