Tag Archives: 4.8

.Net Framework 4.8 Required

Smart Office 10.2.1.0.452 start the new year of 2021 to target Microsoft .Net Framework 4.8, the final version from Microsoft of the classic framework. It will be supported and delivered with future Windows versions. The .Net Framework 4.8 has been part of Windows 10 since v1903 build 18362.

Check .Net Version before next upgrade

Smart Office client has informed about the upcoming change when running on local machines lacking 4.8. The warning has been added in the Smart Office log viewer and log file since build 434 and in the login dialog since build 440. We recommend a version check before doing the next upgrade to the latest Smart Office.
Here are three methods how to check the client .Net version;

1 – Version check in Smart Office client

Launch Smart Office client and its Log Viewer from the About dialog or use the shortcut internal://log.
On the right-hand side in the Log Viewer is the expandable fact-pane, take a look under the Environment header where you see the .Net Framework version listed, or search for the phrase Detected setup in the log.

Smart Office log viewer facts-pane

2 – Manual check in Windows Registry

The Windows registry can be examined using the Windows tool regedt32. For documentation details how the version is specified in the registry follow this link.

The short version is that you launch regedt32 and navigate to the location:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full

The Release value should be equal to or higher than: 528040 (0x00080EA8)
and Version should begin with 4.8.x

3 – Powershell Script check for in Windows Registry (works remote)

Here is an example of a Powershell script that check the listed computers if an upgrade is required to .Net 4.8. The script function take a list of computer names and perform a (remote) check of the registry (if the user is authorized to do so).
The function call below checks the local computer where the script is running.

function CheckDotNet48Framework($computerName)
{
   $dotNet4Registry = 'SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full'
   foreach($computer in $ComputerName)
   {
      if($regKey = [Microsoft.Win32.RegistryKey]::
      OpenRemoteBaseKey('LocalMachine', $computer))
      {
        if ($net4RegKey = $regKey.OpenSubKey("$dotNet4Registry"))
        {
            $net4Release = $net4RegKey.GetValue('Release')
            $net4Version = $net4RegKey.GetValue('Version')
            New-Object -TypeName PSObject -Property ([ordered]@{
                    Computer_Name = $computer
                    Net_Version = $net4Version
                    Net_Build = $net4Release
                    Require_48_Upgrade = $net4Release -lt 528040
            })
         }
      }
   }
}

CheckDotNet48Framework($env:COMPUTERNAME)
Output running script on a local machine with .Net 4.8 Framework

Troubleshoot an Install Issue

If the local machine lacks .Net 4.8 when the Smart Office ClickOnce installation is launched, the following dialog will appear to request an install of .Net Framework v4.8.


The Smart Office ClickOnce upgrade should run without any issues if 4.8 is installed on the local machine, but in rare cases it fails and the cause is often a Windows cache.

If the Cannot Start Application dialog appears, run the following command to clear the online App cache.

rundll32 %windir%\system32\dfshim.dll CleanOnlineAppCache

Try to launch Smart Office again. In most cases ClickOnce should be back on track, upgrade and launch Smart Office.

Note: The Cannot Start Application dialog appear before Smart Office has started and is part of the Windows ClickOnce feature. The Details… button will show you some details of the ClickOnce installation log.

The Install Issue Persists

If the cache is cleared but the issue isn’t resolved, the recommendation is to capture a verbose ClickOnce installation log before you uninstall and reinstall the Smart Office client, in case further support is needed later on.

There is a Windows Registry entry that will enable Verbose log and specify location for the log file. Create an EnableClickOnceVerboseLog.reg file with the following content to run and activate the ClickOnce verbose log.

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Classes\Software\Microsoft\Windows\CurrentVersion\Deployment]
"LogFilePath"="C:\ClickOnce.log"
"LogVerbosityLevel"="1"

The corresponding DisableClickOnceVerboseLog.reg file to de-activate it.

Windows Registry Editor Version 5.00
 [HKEY_CURRENT_USER\Software\Classes\Software\Microsoft\Windows\CurrentVersion\Deployment]
 "LogFilePath"=-
 "LogVerbosityLevel"=-

To fix the issue in Windows, uninstall the Smart Office client in the Windows Control Panel and click on the link at the installation point to re-install it once again. There is an older post about using Powershell script to uninstall Smart Office here.

1) Uninstall Infor Smart Office in Windows Settings under Apps & Features

2) Delete “2.0” folder located at
C:\Users\<ReplaceWithWindowsUserID>\AppData\Local\Apps\2.0
    (Hidden folder, select Hidden Items under File Explorer View Toolbar)

Note: Other .Net Framework applications also store transient data under this folder!
If you have concerns for the data in other applications it’s
recommended only to delete app folders and tree branches that contain
MangoClient* files (Smart Office).