Explorer Replacement vs File:// links in Outlook emails

In Outlook

  1. Type a name for your link. "LINK TO FOLDER"
  2. Highlight "LINK TO FOLER"
  3. Right Click and select [Link]
  4. Choose the folder you want you link to go to.
  5. Send the email to myself
  6. Open the email and click on the link
  7. Directory opus is not the Windows explorer replacement! Windows explorer opens!

Thanks, that's what I needed! I haven't had a chance to set up Outlook yet, but I haven't forgotten about this either. Will investigate how it's launching the folders when I have a moment.

Outlook is explicitly requesting File Explorer when it opens file:// links:

OUTLOOK.EXE	[16724] lpVerb = explore
OUTLOOK.EXE	[16724] lpFile = file:///C:\Users\Leo\Documents\4A%20Games%20Test

Opus respects that and allows File Explorer to handle the request.

(Outlook should be leaving lpVerb null there if it wants the default file manager to be used rather than File Explorer.)

We could possibly add an option to override this in the future, but it won't make the 12.29 release as that has been locked for changes now.

After another look in more detail, we've found a simple fix for this which we can put into 12.29.

Thanks Leo. Any idea when that will be available?

Also, I am using this code which is VBA from an MS Access Database we use.

Case "btnPlans"
    If Not IsNull(CurrentProjectName()) Then
        Application.FollowHyperlink ProjectFolders() & CurrentProjectName() & "\Plans"
    End If

This translates to Application.FollowHyperlink P:\Projectname\Plans\
It has always opened Directory Opus but now opens the default file explorer being windows.

Is there something I can add to this code? Or will this be fixed in 12.29?

I've just checked, I have 12.29 and outlook is fixed but not my Access Database code is not

Try this:

Application.FollowHyperlink "file://" & "P:\Projectname\Plans\"

Thanks Leo,

But no, the windows default lister opens. Any other ideas? This has always opened Directory Opus

It works here from Access.

(Works whether or not the path is URL encoded, which shouldn't matter for the path in your example anyway as it doesn't contain any spaces.)

You could try creating a WshShell object's Run method and the Start command. Bit convoluted but it also works for me from Access:

Sub Test()
    Dim wsh
    Set wsh = CreateObject("WScript.Shell")
    wsh.Run "cmd /C Start """" ""C:\Program Files""", 0
End Sub