Update to removing annoying context menu items

Time for an update of the various things you need to do to remove annoying context menu items:

3D Print with 3D Builder context

  • regedit: remove subkeys
    HKEY_CLASSES_ROOT\SystemFileAssociations\.bmp\Shell\T3DPrint
    HKEY_CLASSES_ROOT\SystemFileAssociations\.jpg\Shell\T3DPrint
    HKEY_CLASSES_ROOT\SystemFileAssociations\.png\Shell\T3DPrint

Edit with Photos

  • regedit: add
    HKEY_CLASSES_ROOT\AppX43hnxtbyyps62jhe9sqpdzxn1790zetc\Shell\ShellEdit > New String Value = ProgrammaticAccessOnly

Cast to Device (*)

  • regedit: add
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Blocked > New String Value = {7AD84985-87B4-4a16-BE58-8B72A5B390F7}

Share

  • regedit: remove subkeys from
    HKEY_Classes_ROOT\*\shellex\ContextMenuHandlers\ and
    HKEY_CLASSES_ROOT\Directory\shellex and
    HKEY_CLASSES_ROOT\Folder\shellex
    • Adobe.Acrobat.ContextMenu
    • DropboxExt
    • Modern Sharing
    • PicaViewCtxMenuShlExt
    • Sharing
    • SnagItMainShellExt
    • TeraCopy

PHP setlocale depends on underlying system (XAMPP on Windows)

I’m maintaining a few websites, so I have a local webserver running to do testing and debugging. Until recently, I was using IIS on my Windows laptop. However, I ditched IIS a while ago, replacing it with XAMPP. This is much closer to the environment that’s running the websites (e.g. I can use .htaccess directly, rather than converting it to a web.config file).

This all worked fine, except for setlocale in PHP. I wanted to use Dutch (Belgian), but I could not get
setlocale(LC_ALL, 'nl_BE');
to work on my local machine.

I searched the web, but did not find any useful information. So I looked at the PHP setlocale helpinfo again, and noticed the Tip in the Notes: Windows users will find useful information about locale strings at Microsoft’s MSDN website.

After checking, it turned out that Microsoft decided to go for another “standard”, so ‘nl_BE’ was not recognized. To use Dutch on Windows, I needed
setlocale(LC_ALL, 'nld_nld');

Oh well…