{"id":4101,"date":"2025-09-21T09:33:41","date_gmt":"2025-09-21T13:33:41","guid":{"rendered":"https:\/\/www.tmurgent.com\/TmBlog\/?p=4101"},"modified":"2026-01-07T09:23:21","modified_gmt":"2026-01-07T14:23:21","slug":"tmeditx-editor-and-tools-6-2","status":"publish","type":"post","link":"https:\/\/www.tmurgent.com\/TmBlog\/?p=4101","title":{"rendered":"TMEditX Editor and Tools 6.2"},"content":{"rendered":"\n<p>Version 6.2 of the TMEditX Editor and the TMEditX Tools are both released today.\u00a0 This post covers both releases.<\/p>\n\n\n\n<h2>TMEditX Editor<\/h2>\n\n\n<div style=\"width: 600px;\">\n\n<em><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-3652 size-thumbnail\" src=\"https:\/\/www.tmurgent.com\/TmBlog\/wp-content\/uploads\/2023\/11\/TMEditX_500x500-150x150.png\" alt=\"\" width=\"150\" height=\"150\" srcset=\"https:\/\/www.tmurgent.com\/TmBlog\/wp-content\/uploads\/2023\/11\/TMEditX_500x500-150x150.png 150w, https:\/\/www.tmurgent.com\/TmBlog\/wp-content\/uploads\/2023\/11\/TMEditX_500x500-300x300.png 300w, https:\/\/www.tmurgent.com\/TmBlog\/wp-content\/uploads\/2023\/11\/TMEditX_500x500.png 600w\" sizes=\"auto, (max-width: 150px) 100vw, 150px\" \/>TMEditX Editor is the licensed and much more capable tool for fixing up MSIX <\/em><em>packages, better than PsfTooling since it doesn&#8217;t have to depend on the Microsoft MSIX Packaging Tool to create the final package.\u00a0 <a href=\"https:\/\/www.tmurgent.com\/appv\/en\/buy\/tmeditx\/tmeditx-download\" target=\"_blank\" rel=\"noreferrer  noopener\">[Download_page]<\/a><\/em>\n\n<\/div>\n\n\n<p>The TMEditX Editor changes in 6.2 include the following:<\/p>\n<ul>\n<li><strong>PSF v.2025.09.19<\/strong><strong>\u00a0<\/strong>which is covered in blog post <a href=\"https:\/\/www.tmurgent.com\/TmBlog\/?p=4098\">New in PSF v.2025.09.19 \u2013 Confessions of a Guru<\/a><\/li>\n<li><strong>Add flexibility on whether to fix missing fonts<\/strong>. By customer request, we added a configuration option that will place this fixup in either the Recommended or Available list.\u00a0 Previously, this always went to the Recommended list.\u00a0 Also added a new command line option\u00a0<strong>\/AutoSkipFonts<\/strong> as a way to disable automatically fixing this for a single package from the command line.<\/li>\n<li><strong>Added flexibility on whether InstalledLocationVirtualization should be used.<\/strong> Also by customer request, a new configuration option in the tool allows you to specify to never add ILV to the package (and if MfrFixup is used to disable the IlvAware mode there also).\u00a0 The customer expressed concern in their environment for binary files to look like they are in the redirection area, which happens automatically with ILV using sparse blocks pointing back to the package installation folder.\u00a0 This apparently was an issue for a security monitoring tool.\u00a0 The security tool could likely be configured to allow this, but that is another group&#8230;<\/li>\n<li><strong>Support for new PSF Debug Logging.<\/strong> The tool will normally configure the PSF with the PsfDebugLevel of 2, which is the equivalent to what we used to get unless you requested the Debug build of the PSF.\u00a0 This provides logging of the PsfLauncher, PsfFtaCom launcher, and the launching of any child processes in the container. There is a new Available fixup to increase the logging level to 4, which is equivalent to using the Debug binaries of the PSF.\u00a0 Manual editing of this value to other levels is also possible on the Json tab.\u00a0 See \u00a0<a href=\"https:\/\/github.com\/TimMangan\/MSIX-PackageSupportFramework\/wiki\/Config.Json\">Wiki page for Config.Json<\/a> for the definition of the levels.<\/li>\n<li><strong>COM Changes.<\/strong>\n<ul>\n<li>Added detection and new fixup for COM entries that require <strong>VB6 runtime<\/strong>.\u00a0 The fixup will add version 6 of the runtime to the package, which will allow for registration of the COM components that use it.<\/li>\n<li>Fix issue where app had a <strong>bad CLSID GUID<\/strong>, and made sure other COM Guids like Interface and TypLibs are well formed also.\u00a0 Previously we would add these in the AppXManifest and the package would fail to install.\u00a0 Obviously, the app isn&#8217;t using COM objects natively anyway.<\/li>\n<li>Added additional checking for all COM CLSID, Interface, and TypeLib entries to ensure that they are valid entries in the registry, not just the GUID but that all required fields are present.\u00a0 There are many <strong>installers adding garbage<\/strong> into the Classes area for non-COM purposes.\u00a0 We now detect these and report them in the Unfixed and Informational item list.<\/li>\n<li>Fix issue where the App registered an <strong>Interface with an incorrectly formed path<\/strong>, as in &#8220;\\folder\\name.dll&#8221;.\u00a0 If we can find the dll in the package, we just correct the entry and process it now.<\/li>\n<li>Fix issue with an app that registered a ProgID for COM using a name that <strong>included the _ character<\/strong>.\u00a0 This is not allowed natively per Microsoft documentation but works anyway.\u00a0 In the AppXManifest this is not allowed and resulted in a package that would not save.\u00a0 We now detect this and add it into the &#8220;unfixable and informational&#8221; item list.\u00a0 Testing so far indicates that in most cases, the ProgID in this form may be used as long as it is in the virtual registry without being in the AppXManifest.<\/li>\n<li>Added support for COM registration with\u00a0<strong>TreatAs<\/strong> and ProgId properly.<\/li>\n<li>Improved diagnostics and support for apps with <strong>ActiveX<\/strong> COM components.<\/li>\n<\/ul>\n<\/li>\n<li>Added code to emit an <strong>exit code when TMEditX closes<\/strong>.\u00a0 This value is for use in automation scenarios and provides an indication of the licensing state of TMEditX, package save state, and signtool\/timestamping state.\u00a0 A return value of zero indicates that the package was successfully updated as requested using an active production license key. The values are bit-encoded as follows (other bits are reserved\/set to zero):\n<table style=\"border-collapse: collapse; width: 100%;\">\n<tbody>\n<tr>\n<td style=\"width: 21.25%;\">Bit Position<\/td>\n<td style=\"width: 78.75%;\">Meaning<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 21.25%;\">0<\/td>\n<td style=\"width: 78.75%;\">Tool was run using an active trial license key<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 21.25%;\">1<\/td>\n<td style=\"width: 78.75%;\">Tool was run using an expired trial license key<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 21.25%;\">2<\/td>\n<td style=\"width: 78.75%;\">Tool was run using an expired production license key.<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 21.25%;\">3<\/td>\n<td style=\"width: 78.75%;\">Tool has not been licensed<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 21.25%;\">4<\/td>\n<td style=\"width: 78.75%;\">A failure occurred in saving the package (makemsix or makeappx)<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 21.25%;\">8<\/td>\n<td style=\"width: 78.75%;\">A failure occurred in signing or timestamping the package<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/li>\n<li>Updated to use the latest libraries used for generation of CimFS packages for AppAttach.<\/li>\n<li>Made performance improvements when analyzing packages with lots of COM.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Where to get the release<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The latest version of TMEditX Editor is found at the following link.&nbsp; TMEditX has a fully functional trial mode that can be used to verify just how good it is.&nbsp; <a href=\"https:\/\/tmurgent.com\/appv\/en\/buy\/tmeditx\/tmeditx-download\">TMEditX Download<\/a><\/p>\n\n\n\n<h2>TMEditX Tools<\/h2>\n\n\n<style>.kb-image4077_19f7b6-35 .kb-image-has-overlay:after{opacity:0.3;}<\/style>\n<div class=\"wp-block-kadence-image kb-image4077_19f7b6-35\"><figure class=\"alignleft size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/www.tmurgent.com\/TmBlog\/wp-content\/uploads\/2025\/07\/TMEditX_Tools-.png\" alt=\"\" class=\"kb-img wp-image-4046\" srcset=\"https:\/\/www.tmurgent.com\/TmBlog\/wp-content\/uploads\/2025\/07\/TMEditX_Tools-.png 1024w, https:\/\/www.tmurgent.com\/TmBlog\/wp-content\/uploads\/2025\/07\/TMEditX_Tools--300x300.png 300w, https:\/\/www.tmurgent.com\/TmBlog\/wp-content\/uploads\/2025\/07\/TMEditX_Tools--150x150.png 150w, https:\/\/www.tmurgent.com\/TmBlog\/wp-content\/uploads\/2025\/07\/TMEditX_Tools--768x768.png 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignleft size-medium wp-image-4046\" src=\"https:\/\/www.tmurgent.com\/TmBlog\/wp-content\/uploads\/2025\/07\/TMEditX_Tools--300x300.png\" alt=\"\" width=\"200\" height=\"200\" srcset=\"https:\/\/www.tmurgent.com\/TmBlog\/wp-content\/uploads\/2025\/07\/TMEditX_Tools--300x300.png 300w, https:\/\/www.tmurgent.com\/TmBlog\/wp-content\/uploads\/2025\/07\/TMEditX_Tools--150x150.png 150w, https:\/\/www.tmurgent.com\/TmBlog\/wp-content\/uploads\/2025\/07\/TMEditX_Tools--768x768.png 768w, https:\/\/www.tmurgent.com\/TmBlog\/wp-content\/uploads\/2025\/07\/TMEditX_Tools-.png 1024w\" sizes=\"auto, (max-width: 200px) 100vw, 200px\" \/><span style=\"font-size: 14px;\">TMEditX Tools is the free tools for packagers wanting to quickly test and debug their MSIX packages.&nbsp; It contains two apps.&nbsp; <strong>MSIXDeploy<\/strong> is used to install, uninstall, and debug MSIX and AppAttach packages from your file share without the need of a server.&nbsp;<strong>ParsePsfDebugLog<\/strong> is a tool for organizing and formatting the debug log output produced when you use the PSF (especially the Debug Psf).<\/span><\/p>\n\n\n\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-8f761849 wp-block-group-is-layout-flex\"><style>.kb-block-show-more-container4077_1e94b6-75 > .kb-show-more-sr-excerpt{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;}.kb-block-show-more-container4077_1e94b6-75 > .wp-block-kadence-advancedbtn{margin-top:1em;}.kb-block-show-more-container4077_1e94b6-75 > .wp-block-kadence-advancedbtn .kt-btn-wrap:nth-child(2), .kb-block-show-more-container4077_1e94b6-75 > .wp-block-kadence-advancedbtn .wp-block-kadence-singlebtn:nth-of-type(2){display:none;}.kb-block-show-more-container4077_1e94b6-75 > .wp-block-kadence-column{max-height:250px;overflow-y:hidden;}.kb-block-show-more-container4077_1e94b6-75.kb-smc-open > .wp-block-kadence-column{max-height:none;-webkit-mask-image:none;mask-image:none;overflow-y:unset;}.kb-block-show-more-container4077_1e94b6-75.kb-smc-open > .wp-block-kadence-advancedbtn .kt-btn-wrap:nth-child(1), .kb-block-show-more-container4077_1e94b6-75.kb-smc-open > .wp-block-kadence-advancedbtn .wp-block-kadence-singlebtn:nth-of-type(1){display:none;}.kb-block-show-more-container4077_1e94b6-75.kb-smc-open > .wp-block-kadence-advancedbtn .kt-btn-wrap:nth-child(2), .kb-block-show-more-container4077_1e94b6-75.kb-smc-open > .wp-block-kadence-advancedbtn .wp-block-kadence-singlebtn:nth-of-type(2){display:inline-flex;}.kb-block-show-more-container4077_1e94b6-75.kb-smc-open > .wp-block-kadence-advancedbtn.kt-force-btn-fullwidth .kt-btn-wrap:nth-child(2){display:block;}<\/style>\n<div class=\"wp-block-kadence-show-more kb-block-show-more-container kb-block-show-more-container4077_1e94b6-75\"><div class=\"kb-show-more-sr-excerpt\" aria-live=\"polite\" aria-atomic=\"true\"><\/div><style>.kadence-column4077_9fa236-70 > .kt-inside-inner-col,.kadence-column4077_9fa236-70 > .kt-inside-inner-col:before{border-top-left-radius:0px;border-top-right-radius:0px;border-bottom-right-radius:0px;border-bottom-left-radius:0px;}.kadence-column4077_9fa236-70 > .kt-inside-inner-col{column-gap:var(--global-kb-gap-sm, 1rem);}.kadence-column4077_9fa236-70 > .kt-inside-inner-col{flex-direction:column;}.kadence-column4077_9fa236-70 > .kt-inside-inner-col > .aligncenter{width:100%;}.kadence-column4077_9fa236-70 > .kt-inside-inner-col:before{opacity:0.3;}.kadence-column4077_9fa236-70{position:relative;}@media all and (max-width: 1024px){.kadence-column4077_9fa236-70 > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}@media all and (max-width: 767px){.kadence-column4077_9fa236-70 > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}<\/style>\n<div class=\"wp-block-kadence-column kadence-column4077_9fa236-70 kb-show-more-content\"><div class=\"kt-inside-inner-col\">\n<h2 class=\"wp-block-heading\">TMeditX Tools<\/h2>\n<\/div><\/div>\n\n\n<style>.wp-block-kadence-advancedbtn.kb-btnsbutton-one-4{gap:var(--global-kb-gap-xs, 0.5rem );justify-content:flex-start;align-items:center;}.kt-btnsbutton-one-4 .kt-button{font-weight:normal;font-style:normal;}.kt-btnsbutton-one-4 .kt-btn-wrap-0{margin-right:5px;}.wp-block-kadence-advancedbtn.kt-btnsbutton-one-4 .kt-btn-wrap-0 .kt-button{color:#555555;border-color:#555555;}.wp-block-kadence-advancedbtn.kt-btnsbutton-one-4 .kt-btn-wrap-0 .kt-button:hover, .wp-block-kadence-advancedbtn.kt-btnsbutton-one-4 .kt-btn-wrap-0 .kt-button:focus{color:#ffffff;border-color:#444444;}.wp-block-kadence-advancedbtn.kt-btnsbutton-one-4 .kt-btn-wrap-0 .kt-button::before{display:none;}.wp-block-kadence-advancedbtn.kt-btnsbutton-one-4 .kt-btn-wrap-0 .kt-button:hover, .wp-block-kadence-advancedbtn.kt-btnsbutton-one-4 .kt-btn-wrap-0 .kt-button:focus{background:#444444;}<\/style>\n<div class=\"wp-block-kadence-advancedbtn kb-buttons-wrap kb-btnsbutton-one-4 kb-show-more-buttons\"><style>ul.menu .wp-block-kadence-advancedbtn .kb-btn4077_8d4bc5-02.kb-button{width:initial;}<\/style><button class=\"kb-button kt-button button kb-btn4077_8d4bc5-02 kt-btn-size-small kt-btn-width-type-auto kb-btn-global-fill  kt-btn-has-text-true kt-btn-has-svg-false  wp-block-kadence-singlebtn\"><span class=\"kt-btn-inner-text\">Show More<\/span><\/button>\n\n<style>ul.menu .wp-block-kadence-advancedbtn .kb-btn4077_f268c1-c0.kb-button{width:initial;}<\/style><button class=\"kb-button kt-button button kb-btn4077_f268c1-c0 kt-btn-size-small kt-btn-width-type-auto kb-btn-global-fill  kt-btn-has-text-true kt-btn-has-svg-false  wp-block-kadence-singlebtn\"><span class=\"kt-btn-inner-text\">Show Less<\/span><\/button><\/div>\n<\/div>\n<\/div>\n\n\n\n<p>The following changes are in the tools:<\/p>\n<p><strong>MSIXDeploy:<\/strong><\/p>\n<ul>\n<li>Better treatment when installing and uninstalling CIMFS packages for testing.<\/li>\n<\/ul>\n<p><strong>ParsePsfDebugLog:<\/strong><\/p>\n<ul>\n<li>Improved support for the new PSF logging.<\/li>\n<li>Slight performance improvements in the UI.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Where to get the release<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">TMEditX Tools is free, and the latest release may be found at <a href=\"https:\/\/tmurgent.com\/appv\/en\/resources\/tools-downloads\/msix-tools\/128-msix-tools\/652-tmeditx-tools-install\">TMEditX Tools Download<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Version 6.2 of the TMEditX Editor and the TMEditX Tools are both released today.\u00a0 This post covers both releases. TMEditX Editor The TMEditX Editor changes in 6.2 include the following: PSF v.2025.09.19\u00a0which is covered in blog post New in PSF v.2025.09.19 \u2013 Confessions of a Guru Add flexibility on whether to fix missing fonts. By&hellip; <a class=\"more-link\" href=\"https:\/\/www.tmurgent.com\/TmBlog\/?p=4101\">Continue reading <span class=\"screen-reader-text\">TMEditX Editor and Tools 6.2<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_crdt_document":"","_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"categories":[53,50],"tags":[52,7],"class_list":["post-4101","post","type-post","status-publish","format-standard","hentry","category-msix","category-tools","tag-msix","tag-tools","entry"],"_links":{"self":[{"href":"https:\/\/www.tmurgent.com\/TmBlog\/index.php?rest_route=\/wp\/v2\/posts\/4101","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.tmurgent.com\/TmBlog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.tmurgent.com\/TmBlog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.tmurgent.com\/TmBlog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tmurgent.com\/TmBlog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4101"}],"version-history":[{"count":4,"href":"https:\/\/www.tmurgent.com\/TmBlog\/index.php?rest_route=\/wp\/v2\/posts\/4101\/revisions"}],"predecessor-version":[{"id":4151,"href":"https:\/\/www.tmurgent.com\/TmBlog\/index.php?rest_route=\/wp\/v2\/posts\/4101\/revisions\/4151"}],"wp:attachment":[{"href":"https:\/\/www.tmurgent.com\/TmBlog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4101"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.tmurgent.com\/TmBlog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4101"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tmurgent.com\/TmBlog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4101"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}