Running Thin without the Office Suite … and not turning back!

Thursday, October 5, 2017

Here’s another great little utility/hack from Jacques Bensimon!


About a year and a half ago, I jettisoned my laptop for most on-site client work in favor of a little Intel Compute Stick (2nd Gen) which I essentially use as a thin client to access local resources via RDP or ICA.  Given its minimal specs (2GB RAM, 32GB SSD), I decided not to install an Office suite on it, relying instead on the built-in Windows 10 Mail app for e-mail and on Mobile Excel, Word & PowerPoint (free from the Windows Store) for viewing and light editing of attachments.  Over that span of time, the various Windows updates & new builds have gradually improved the Mail app and it now earns my highly sought Quite Usable rating in the current Creators Build (despite the niggling absence of drag-and-drop editing).

One annoyance I wasn’t prepared to live with however was the fact that the Windows Explorer (are we really supposed to call it File Explorer now?) Send to a Mail recipient context menu item does not work with the Mail app, complaining that “there is no email program associated to perform the requested action” even if the Mail app is fully associated with all its supported file types and protocols:

clip_image001

The clue to the problem is right in the name of the "Send to" "Mail Recipient" shortcut file:  Mail Recipient.MAPIMail, i.e. the shortcut expects a MAPI-compliant e-mail client to be registered, and the Windows 10 Mail app pretty clearly isn’t one.  Any attempt to resolve this issue without a completely different "Send To" mechanism was therefore going to be futile.  What follows is the path I followed to arrive at an ideal solution – even if you have zero interest in the Windows 10 native Mail app, read sections 2/ and 3/ for some interesting Windows 10 capabilities of which you may not be aware.

1/  As is typical of programmers, my first thought was of course to write a program – the result is "SendViaMailApp".  Place "SendViaMailApp.exe" anywhere you like on your Windows 10 computer, then create a shortcut to it in your SendTo folder (typically %AppData%\Microsoft\Windows\SendTo) -- you can name the shortcut anything you want, for example "Mail App" (as used in the notes below).

Notes:

  • The SendTo "Mail App" shortcut can coexist with the existing SendTo "Mail recipient" shortcut: the former will invoke the Windows 10 Mail app, the latter Outlook (if installed).
  • The only requirement for the SendTo "Mail App" shortcut to work correctly is that the Mail app still have its default association with the "ms-unistore-email" protocol (which no other program claims as far as I know, so that should already be the case on your Windows 10 machine).
  • After selecting items in Explorer and using SendTo "Mail App", there is a built-in 1 second delay between the time a new Mail message appears and the selected item(s) are attached to it.  This is to accommodate slow machines.
  • SendTo "Mail App" works with one more selected items: (1) if they're all files, they're all attached to a new e-mail (even if they come from different folders, such as when selected in a search results window), (2) if they're a mixture of files and folders, the files are attached and the folders are ignored, (3) if it's a single folder, it will be opened in the Mail app's attachments dialog (from which you can select the item(s) to attach), and finally (4) if they're multiple folders, the Mail app will complain with an error message ("The file name is not valid").
  • If SendViaMailApp.exe is launched directly without any parameters, it will simply create a new message in Mail and not attempt to attach anything to it.

2/  A little later, as I was playing around with the hidden (and comically primitive) UWP/”modern” File Explorer, which you can launch via command line or shortcut using the syntax

C:\Windows\explorer.exe shell:AppsFolder\c5e2524a-ea46-4f67-841f-6a9465d9d515_cw5n1h2txyewy!App

, I realized that its file context menu includes a “Share” item, which in turn leads to a Share dialog (see following screenshots) that includes not only Mail but also any number of additional UWP apps capable of “doing something” with the clicked file, some of which may not even be installed and are offered for immediate installation (let’s pretend I think this isn’t a terrible idea!).  The Mail option creates a new message using the Mail app, with the selected file(s) attached.

clip_image002 clip_image003

3/  So the next thing that naturally came to mind is “can’t this Share item be enabled in standard/desktop Windows Explorer context menus?”  A quick search of Google  and a positive answer was obtained (see the required Registry entries below – not sure why Microsoft chose not to make this a default Explorer feature).  Once enabled, selecting items in Explorer, right-clicking, and selecting Share (rather than Send To) will bring up the same sharing dialog as above, with Mail and other relevant UWP apps available.

To enable the Share context menu item in Windows Explorer, import the following .reg file contents into the Registry:

REGEDIT4

[HKEY_CLASSES_ROOT\*\shell\Windows.ModernShare]
"CommandStateSync"=""
"ExplorerCommandHandler"="{e2bf9676-5f8f-435c-97eb-11607a5bedf7}"
"Icon"="ntshrui.dll,-123"
"ImpliedSelectionModel"=dword:00000000

If nothing else, this creates an unusual and nifty bridge between the desktop & UWP worlds.

Back to my Mail issue, both solutions (1/ and 3/) remain simultaneously enabled on the Compute Stick, for those times when I forget about the Share item and mechanically go straight to Send To (plus can’t let a good utility go to waste, right?!)

JB


Be sure to follow and comment to Jacques on Twitter with @JacqBens.
Previous
Next Post »

Amazon