GacUtil / SDK not found for action GAC Install

Hi,

 I  set up a new build machine on Windows 8 x64 and installed VS 2012, Windows 8 SDKs and FB 7.0.0.2346.

.Net Framework 2.0/3.5 is enabled.

Action GAC Install complains about a missing SDK and offers an empty SDK list.

Gacutil.exe (v4) itself is installed in C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools,

Gacutil.exe (v3.5) in C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin.

What I'm missing here?

Hi Martin,

I have reproduced this issue will track it down. Will let you know when I have a solution for this.

Hi Martin,

In the installation directory of FinalBuilder there is a DotNetConfig.xml file. Inside this file you will find the following element “<Framework version=“v3.5” integer=“35”>”, under which you will see a number of SDK Install Path elements. If you can add the following as the first SDKInstallPath element

[code]<SDKInstallPath><Key>SOFTWARE\Microsoft\Microsoft SDKs\Windows\v8.0A\WinSDK-NetFx35Tools</Key><Value>InstallationFolder</Value></SDKInstallPath>[/code]

Once that is done give me a heads up as to how things go from there.

Thanks, to which element “” should I add this? I assume you mean ?
This shows 3.5 now in GAC Install.

However I need both, 2.0/3.5 and 4.0 gacutil in my project. How do I get 4.0 supported?

Should be

[code] <Framework version="v3.5" integer="35">[/code]

Yes sorry I left that part out. Does this now work for you?

Not completely, how do I get 4.0 supported?

Hi Martin, 

Backup your current DotNetConfig.xml and use the following one. This one correctly looks for the windows 8 sdk directory for 4.0 (and inline replacements).DotNetConfig.xml (3.007 KB)

Sorry for my late response. It does not work. It displayes a v4.0 but still loads the 3.5 Version of GacUtil:

GAC Install [ Assembly Path: M:\Subversion\LightsOut\Assemblies\VailAssemblies\GAC\NLog.dll ]
Status: Error
Date: 23.07.2013
Time: 17:35:19:322
End: 17:35:19:489
Duration: 00:00:00:167

Action Messages:
Executing external process: C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\gacutil.exe
Starting Directory: C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\
Parameters: /i “M:\Subversion\LightsOut\Assemblies\VailAssemblies\GAC\NLog.dll”
Output from C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\gacutil.exe
Microsoft ® .NET Global Assembly Cache Utility. Version 3.5.30729.1
Copyright © Microsoft Corporation. All rights reserved.

Failure adding assembly to the cache: This assembly is built by a runtime newer than the currently loaded runtime and cannot be loaded.
Action Failed
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\gacutil.exe returned : 1

Hi Martin, 

Try this updated file. wow6432Node section in the registry has been added. We are also adding support for 4.5.1.

Hi Martin

This issue should be fixed in the update we just posted on the website. Jason & I finally figured out what the cause was today, I’m surprised that we haven’t seen this issue before.

Thanks, will give it a try.

Sorry, still does not work as expected. This time v4.0 is working but not 3.5.
[code] The .NET SDK version you are trying to use (v3.5) is not installed. Change the version in the action properties or the default in the FinalBuilder Options.[/code]
I have a project which creates a .Net 2.0/3.5 package and a 4.0 package. So I need to run GacUtil with both SDKs.

Can you show export the HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Microsoft SDKs\Windows registry key to a text file and send it to support at finalbuilder so we can see why 3.5 is not working?

Done.

Thanks, build 2382 is working on Windows XP (32 Bit) and Windows 8 (64 Bit).

Installed build 2411 today and now .Net 4.0 IS NO LONGER DETECTED!!
I’m back to build 2382.

We’re working on this. Getting it to work reliably on every machine with every sdk version is proving difficult… microsoft keep changing how things are installed, and the behavior on windows 8 is different to 7 for some of the older versions.

Posted By Vincent Parrett on 06 Aug 2013 03:26 AM
We're working on this. Getting it to work reliably on every machine with every sdk version is proving difficult.. microsoft keep changing how things are installed, and the behavior on windows 8 is different to 7 for some of the older versions.


I totally understand the pain point here. MS APIs and software installations and various behaviours in x86/x64 on different platforms is driving me slowly to the loony bin. Please be careful when using the WOW6432 node in the registry Microsoft reserve the right to change it's use. See http://msdn.microsoft.com/en-us/lib...s.85).aspx. Had to add .net 4 code to work the the correct registry hive as well as Windows API's for .net framework code prior to 4.0. PITA. See http://stackoverflow.com/questions/...-using-net for an overview in the .net world.