4.5 installer

Started by WAS, August 21, 2020, 02:10:11 PM

Previous topic - Next topic

WAS

So it doesn't seem to be detecting what versions are installed on the system, I have the version required already installed, but it tries to install over it, which it doesn't allow. You have to remove them first. The installer just quits even though it is installed. I had to remove the versions installed on my system.

Dune

Are you talking about .NET? I had trouble installing 4.8 for Gaea, as there was some sort of verification issue not being able to do something (offline). A pity we have to use these external apps.
With TG it went fine (4.5 installed manually), but that's on PC, win 7.

WAS

It was for Visual Studio 2015-2019. It downloaded it, and proceeded to install but UAC or Visual Studio blocked the install saying the same version was installed. But instead of the TG install continuing, knowing it has the version available on the system to depend on, it just quits. Perhaps the installer is looking at the full version including build number, and I'm sure there have been small patches/changes put into new builds. Common with MS hence the long version trailing digits with installers.

WAS

#3
I'm also now getting errors with the Visual Studio 2015-2019 that the installer targeted and installed. I keep getting a .net error: "System.IO.FileNotFoundException: Could not load file or assembly 'RSy3_AudioAppStreamsWrapper.dll'" when the system loads, and every 7 seconds the mouse skips. Trying to narrow things down but the only thing that's changed is letting TG install visual studio and removing the version I had installed since it wouldn't let me proceed.

Disabled .NET services altogether stops the mouse freezing, so I uninstalled it all safe mode and tried to let TG install it again, but the error persisted upon restarting, and so did the mouse issue with .NET running.

Is TG targeting a very specific build that would interfere with other applications relying on .NET?

You may think about making the software simply depend on .NET and not run until it's installed (windows should do this automatically if it's missing a dependency). Windows 7/8/10 should than prompt to install the missing service directly with Microsoft Update Services. Wouldn't need to include it as part of the software.

Dune

I don't like depencies anyway, so why not build in (TG) the missing piece of code (from .NET)?

Matt

Terragen 4.5 does not require .NET.

The very last post on this page:

https://answers.microsoft.com/en-us/windows/forum/all/could-not-load-file-or-assembly/d44157d0-4cdb-4ebf-8582-08fa2491d5de

suggests it may be a clash between x86 and x64 versions of the Visual C++ Redistributables. Are there any x86 versions on your hard drive?
Just because milk is white doesn't mean that clouds are made of milk.

Matt

Just because milk is white doesn't mean that clouds are made of milk.

WAS

Visual Studio 2015-2019 uses .NET, as of 2017 requiring .NET 4.6 or higher.

I've already looked at this topic and various others. Microsoft visual C++ hasn't been modified in over a year and hasn't even changed in 8 months (file structure) so is likely not the cause. And considering the problem is cleared when .NET process is killed, and the offensive error is from .NET...  it seems the person removing C++ and having success was placebo driven and he likely did something else, or simply did not have .NET running.

WAS

What about the questions I had? TG install isn't aware of the same version of Visual Studio installed. So is it targeting a specific build instead of a minimum version? It literally won't install if Visual Studio 2015-2019 is installed already. You HAVE to remove it from your system and let TG do it. Which is where the problem started.

Matt

Quote from: WAS on August 23, 2020, 08:52:44 PMVisual Studio 2015-2019 uses .NET, as of 2017 requiring .NET 4.6 or higher.

Visual Studio does, but Visual C++ Redistributables are not the same thing, and I don't think they need .NET. If you have .NET installed it may be worth trying to find out if there's something wrong with your .NET installation.
Just because milk is white doesn't mean that clouds are made of milk.

Matt

Quote from: WAS on August 23, 2020, 08:54:18 PMWhat about the questions I had? TG install isn't aware of the same version of Visual Studio installed. So is it targeting a specific build instead of a minimum version? It literally won't install if Visual Studio 2015-2019 is installed already. You HAVE to remove it from your system and let TG do it. Which is where the problem started.

I will look into that. Microsoft made a mistake with the signatures on their redistributable downloads, and I have to patch it in order to get this to install correctly for the majority of users. This may have inadvertently caused the installation failure you saw.
Just because milk is white doesn't mean that clouds are made of milk.

Matt

Is it Terragen build 4.5.38 frontier?
Just because milk is white doesn't mean that clouds are made of milk.

Matt

Some earlier alpha builds ran into the Visual C++ clash you described, because of an incorrect config from Microsoft. I don't recommend trying to work around issues like this by uninstalling anything; it's better if we can fix the installer.

Here are the relevant extracts from the Terragen 4.5.38 installer, which is modified from Microsoft's original config and should allow newer versions of Visual C++ redist to be installed.


  <InstallChecks>
    <RegistryCheck Property="VersionFullCheck" Key="HKLM\SOFTWARE\Microsoft\VisualStudio\14.0\VC\Runtimes\x64" Value="Version" />
  </InstallChecks>

  <!-- These checks determine whether the package is to be installed -->
  <InstallConditions>
    <BypassIf Property="VersionFullCheck" Compare="ValueGreaterThanOrEqualTo" Value="v14.24.28127"/>

    <!-- Block install if user does not have admin privileges -->
    <FailIf Property="AdminUser" Compare="ValueEqualTo" Value="false" String="AdminRequired"/>
    <!-- Block install on any platform other than x64 -->
    <FailIf Property="ProcessorArchitecture" Compare="ValueNotEqualTo" Value="AMD64" String="InvalidOS"/>
    <!-- Block install on Vista or below -->
    <FailIf Property="VersionNT" Compare="VersionLessThan" Value="6.00" String="InvalidPlatformWinNT"/>
  </InstallConditions>

Just because milk is white doesn't mean that clouds are made of milk.

WAS

Don't you need to specifically denote C++ Development Environment via command line to install Visual Studio with that primary functionality? Otherwise it installed the default .NET Web and .NET Desktop Development Environment? I thought you had to specifically specialize .NET Office or C++ development environment via? And if you're on Mac, you can't do anything but build in the .NET environment. I remember specific installation directions when I was trying to pickup C++ modding for games.

Looking through Windows error log, when Terragen does successfully install it removed vc++ and reinstalls it, as well as vc++ additional, whatever that is.

The issue I narrowed down to Synapse Display Driver and it's use of the .NET framework, but it also uses VC++, so this is probably where the conflict is happening. I don't know what Razer is expecting of VC++.

What I ended up doing is reinstalling VC++ and restarted, so far no error, and both TG and Synapse crap is running without error.

If you can PM me a link to the frontier 4.5 again though I wanted to check to see if the installer still complains about Visual Studio already being installed and quits. Thank you.

Matt

Quote from: WAS on August 24, 2020, 12:02:59 AMDon't you need to specifically denote C++ Development Environment via command line to install Visual Studio with that primary functionality? Otherwise it installed the default .NET Web and .NET Desktop Development Environment? I thought you had to specifically specialize .NET Office or C++ development environment via? And if you're on Mac, you can't do anything but build in the .NET environment. I remember specific installation directions when I was trying to pickup C++ modding for games.

Terragen doesn't need Visual Studio or .NET to install or run. But they shouldn't cause any conflicts if you have them (as I do).

Terragen on Windows needs Visual C++ Redistributables (a.k.a. Runtimes), but that's basically it.
Just because milk is white doesn't mean that clouds are made of milk.