Skip to content

VideoUltimate v4.5.5

Choose a tag to compare

@GleamTech GleamTech released this 26 Sep 22:32
· 10 commits to master since this release

Version 4.5.5 - September 26, 2025

  • Improved: The default value for GleamTechConfiguration.TemporaryFolder will now be [AppData Temporary Folder]
    if current user has read/write access, if not it will be [System Temporary Folder].

    This change is done so that developer is only concerned about write permissions to [AppData Temporary Folder]
    when publishing to production and not system temporary folders such as C:\Windows\Temp.
    This way, everything will be on the table i.e. all generated files (AssemblyResolver files, cache files, log files) will be in a single place.
    Files from old system temporary folder will be migrated/moved to this new location on application startup (if has write access).

    [AppData Temporary Folder] can be different for different environments:

    • For ASP.NET Core apps, the resolved result of ~/App_Data:
      • [AppBase]\wwwroot\App_Data\Temporary
    • For ASP.NET Classic apps, the resolved result of ~/App_Data:
      • [AppBase]\App_Data\Temporary
    • For Console or other non-web apps:
      • [AppBase]\AppData\Temporary

    [System Temporary Folder] can be different for different environments:

    • For ASP.NET Core apps, the result of Path.GetTempPath() which
      depends on "TMP", "TEMP" and "USERPROFILE" environment variables:
      • %WINDIR%\Temp\GleamTech\[AppName]-[AppHash]
      • %LOCALAPPDATA%\Temp\GleamTech\[AppName]-[AppHash]
        (if "Load User Profile" is enabled for AppPool in IIS)
    • For ASP.NET Classic apps:
      • %WINDIR%\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\[AppName]\[AppHash]\GleamTech
      • %WINDIR%\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\[AppName]\[AppHash]\GleamTech
        (if 32-bit AppPool)
      • %LOCALAPPDATA%\Temp\Temporary ASP.NET Files\vs\[AppHash]\GleamTech
        (when debugging in Visual Studio)
    • For Console or other non-web apps, the result of Path.GetTempPath() which
      depends on "TMP", "TEMP" and "USERPROFILE" environment variables:
      • %LOCALAPPDATA%\Temp\GleamTech\[AppName]-[AppHash]
      • %WINDIR%\Temp\GleamTech\[AppName]-[AppHash]
    • For apps running on unix-like platforms:
      • /tmp/GleamTech/[AppName]-[AppHash]
  • Improved: ImpersonationContext is improved to support multi-threads and async threads.
    Ensured ImpersonationInfo and LogonCredential do not lose access tokens (re-cache when necessary).

  • Improved: TemporaryFolder, FileCache and DbProvider will now do two tries for access, if first one fails,
    will try again by reverting possible impersonation.

  • Changed: Removed legacy GleamTechConfiguration.AlphaFileSystemEnabled property.

Included example projects:

  • ASP.NET Core (C#) - Visual Studio 2019+
  • ASP.NET Core on .NET Framework (C#)- Visual Studio 2017+
  • ASP.NET MVC (C#) - Visual Studio 2015+
  • ASP.NET MVC (VB) - Visual Studio 2015+
  • ASP.NET WebForms (C#) - Visual Studio 2015+
  • ASP.NET WebForms (VB) - Visual Studio 2015+