Distributing to a network resource

This is technically for FNC Maps, but I'm guessing it applies to Core/Web browser.

I have a program, which if installed and ran from the users local machine works excellent (Edge Chromium version 87.0.664.66, FNC Map version 1.0.4.1). But if I then move that program to a central network location and run via a UNC path it cannot load the Edge Chromium support.

Is this a problem on my end?

Please explain what type of application it is. Web? VCL? FMX?

It could indeed be the network resource being judged as insecure by Windows (remember when you copy a file from a network folder you sometimes get a warning as well).

It's a VCL program Delphi Seattle.

Our programs are all installed on the server, with a shared folder. Programs are ran by creating a shortcut.

Another hint. This was working before the October update (for FNC Core/Maps). Unfortunately at the moment, I don't have many environments from which to test. Just our own.

I still think it has to do with a network resource being in another security zone and have no further ideas.

I am sure @Pieter_Scheldeman and @Bart will have more feedback as soon as they see this post.

Can you try installing the Evergreen version from this webpage (scroll to the bottom). On every machine that needs to run the application which hosts the browser. This is a requirement.

https://developer.microsoft.com/en-us/microsoft-edge/webview2/

image

That worked. Can you give me a little bit more info on what this is? I was under the impression (according to the documentation) that the users just needed a high enough version of Edge Chromium and the WebView2Loader DLL.

Are there any options for us to help ease distribution? Someway to auto-detect the user doesn't have WebView2 Runtime and install it for them? The site mentions packaging with your application, but I've never worked with CAB files before.

Hi,

We support three methods:

  1. Automatic detection of the default Edge version (installed through Windows updates)
  2. Evergreen runtime (separate installer - bootstrap available)
  3. BETA, DEV & CANARY builds (non-stable) (separate installer)

All three methods require the DLLs to be shipped. more info can be found at

According to the first post, you were using option 1) of the above three options. The issue we detected yesterday is that the copy instruction of the default Edge Chromium version had issues. A solution to this is to remove the Microsoft Edge folder with the specific version number from the Windows temp directory on your system, or the system of the user and then restart the application. The alternative option of installing the Evergreen runtime is a better option on the long run. When the runtime is detected, option 1) is skipped, at it no longers copies the default stable version from the system the application is running on.

Microsoft documentation states that (for now) the evergreen runtime installer option 2) is required in order to successfully run applications. To offer a better "out-of-the-box solution" to our customers, we implemented a manual copy.

The following link explains what is needed to use option 2).

When reading through the documentation, you will also note that Microsoft plans on shipping the runtime with Windows, which means that we should no longer have to install a runtime ourselves. When that is going to happen is unclear. It also mentions what you need to do in order to detect if Edge Chromium is available on the system or not (see chapters "Online" & "Offline").

Excellent. Thank you for your time.

1 Like