MZ-Tools 7.0 Build 124 released with bug fixes

MZ-Tools 7.0.0.124 has just been released with a few bug fixes:

  • Fixed [336-1B1EFE8F-0201]: The Code Element Headers feature didn’t provide the “Parent Code Element Name” predefined variable.
  • Fixed [336-1B1EFE8F-0201]: The Code Element Headers feature didn’t replace the parameters predefined variables if they appeared twice in a header and the method had no parameters.
  • Fixed [198-1B26363A-0201]: The Open Folder on Disk feature could cause a System.ArgumentException “Value does not fall within the expected range.”.
Tweet about this on TwitterShare on FacebookEmail this to someoneShare on Google+Share on LinkedInShare on Reddit

MZ-Tools 7.0 Build 123 released with bug fixes

After a few months without updates, MZ-Tools 7.0.0.123 has just been released with a few bug fixes:

  • Fixed: A “System.Xml.XmlException: Root element is missing.” could happen loading the PrivateClipboardsAdminOptions.xml file.
  • Fixed: The Child Code Element editor of the Sort Code Elements feature showed the “Any” item in the list of contexts in some cases.
  • Fixed: The Generate HTML Documentation feature didn’t output the image of events.
  • Fixed: The Control Names Assistant didn’t set correctly the background color of textboxes when losing the focus in Visual Studio versions that don’t support themes.
  • Fixed: The Control Names Assistant didn’t show correctly the selected portion of text.
  • Fixed: The Control Explorer could cause System.Reflection.TargetInvocationException with Service designer.
  • Fixed: The Control Explorer could cause System.InvalidOperationException SplitterDistance must be between Panel1MinSize and Width – Panel2MinSize.
  • Fixed: The Find Text feature silenced problems with C++ files showing only the message “The operation ‘Find Text’ was cancelled by the user or it occurred an unexpected error while processing the following file:”
  • Fixed: The Find Text feature failed to show some code elements in C++ files. Now it doesn’t show code elements even if requested because that setting only works with VB.NET and C# files.
Tweet about this on TwitterShare on FacebookEmail this to someoneShare on Google+Share on LinkedInShare on Reddit

MZ-Tools 7.0 Build 116 released with bug fixes

MZ-Tools 7.0.0.116 has just been released with a few bug fixes, most of them to provide a better experience with 3rd party software:

  • Fixed: The Sort Code Elements feature didn’t preserve comments in the same line of the “end region” keyword.
  • Fixed: Some critical exceptions were being silenced.
  • Fixed: A System.IO.IOException could happen when using Windows 8.1 and SkyDrive to store the team options.
  • Fixed: Improved support for 3rd party TabControls.
  • Fixed: The picture of some 3rd party controls using .ico files as bitmap was not shown in the Control Explorer.
  • Fixed: 3rd party controls using the HKEY_CURRENT_USER hive could cause “ICollectionItemEditor.InitializeControlValues failed” in the Options window.
Tweet about this on TwitterShare on FacebookEmail this to someoneShare on Google+Share on LinkedInShare on Reddit

System.IO.IOException: “The file cannot be accessed by the system” using Windows 8.1 and SkyDrive

If you are using SkyDrive to store the Team Options of MZ-Tools 7.0 (to share them among several computers of yours), you can get the following error on Windows 8.1 (but not on Windows 7 or Windows 8):

“System.IO.IOException: The file cannot be accessed by the system”

IOException

This issue will be addressed in the next build to fail more gracefully with a friendly explanation, but meantime the workaround is the following:

  • Using Windows Explorer, right-click the folder to show its context menu.
  • Click the “Make available offline” menu entry.
Tweet about this on TwitterShare on FacebookEmail this to someoneShare on Google+Share on LinkedInShare on Reddit

Installing MZ-Tools 3.0 for VBA for non-admins

The most common question that I receive about MZ-Tools 3.0 for VBA is how to install it without administrator rights or the variant “I don’t see MZ-Tools after an administrator installed it”.

The short answer is that you can’t install MZ-Tools 3.0 for VBA without being an administrator. This is because the add-in dll must be registered as COM component, and in this version 3.0 it uses machine-wide COM-registration (using the HKEY_LOCAL_MACHINE registry hive, like regsvr32.exe does).

Note: It happens that per-user COM-registration is possible (not requiring admin rights), and the new major version MZ-Tools 8.0 for VBA will avoid this problem. But meantime, you need to persuade an administrator to install it as the first step.

Once an administrator has installed the add-in, a problem remains: VBA add-in registration (which is different from COM-registration) is badly designed and the VBA editor only looks for add-ins in the HKEY_CURRENT_USER registry hive. So, when the administrator installed the add-in, it wrote registry entries in her HKEY_CURRENT_USER registry hive. Since they are missing in your HKEY_CURRENT_USER registry hive, you “don’t see” the add-in. Fortunately nothing prevents you writing in your HKEY_CURRENT_USER registry hive even lacking administrator rights, so you can create a program with any technology (.NET, VB6, VBA macro, VBScript, PowerShell, etc.) to write these entries:

HKEY_CURRENT_USER\Software\Microsoft\VBA\VBE\6.0\AddIns\MZTools3VBA.Connect

Name: Description
Type: REG_SZ
Value: MZ-Tools 3.0 for VBA

Name: FriendlyName
Type: REG_SZ
Value: MZ-Tools 3.0 for VBA

Name: LoadBehavior
Type: DWORD
Value: 3

In the FAQ entry about this issue I have provided a PowerShell script that writes those entries.

Tweet about this on TwitterShare on FacebookEmail this to someoneShare on Google+Share on LinkedInShare on Reddit

MZ-Tools 7.0 Build 115 released with bug fixes

MZ-Tools 7.0.0.115 has just been released with a couple of bug fixes and a small enhancement that a customer requested:

  • Fixed: When closing Visual Studio 2010 or higher, a “System.ApplicationException: Error adding the DTE command with name ‘X’ due to the following cause: A Command with that name already exists.” error could happen if CodeRush (and maybe other DXCore-based DevExpress products) is also installed.
  • Fixed: The Sort Code Elements feature no longer shows an exception if regions are not correct in the source code.
  • Fixed: The Sort Code Elements feature now allows to keep the existing order of fields (not only of constants).
Tweet about this on TwitterShare on FacebookEmail this to someoneShare on Google+Share on LinkedInShare on Reddit

MZ-Tools 7.0 Build 113 released with bug fixes

MZ-Tools 7.0.0.113 has just been released with several bug fixes:

  • Fixed: The Programming Rules Review feature could cause “System.Runtime.InteropServices.COMException (0x80004005): Error HRESULT E_FAIL has been returned from a call to a COM component.” at EnvDTE80.CodeParameter2.get_ParameterKind().
  • Fixed: The Control Explorer and other toolwindows didn’t work correctly when docked as documents.
  • Fixed: The Sort Code Elements feature removed commented lines at the end of code regions.
  • Fixed: The Control Explorer controls were not correctly placed the first time that the toolwindow was shown.
  • Fixed: Commands of code templates and exception handlers were not created the first time that MZ-Tools was loaded in a new Visual Studio version.
  • Fixed: The result of a Programming Rule Review using the Code property was not correctly located in the code window.
  • Fixed: Entering an invalid regular expression in the “Files Matching Regular Expression” scope caused System.ArgumentException.
  • Fixed: The Add Line Numbers feature didn’t numbered a Select Case statement after certain comment lines.
  • Fixed: The declaration of method variables was not parsed correctly.
Tweet about this on TwitterShare on FacebookEmail this to someoneShare on Google+Share on LinkedInShare on Reddit