This project has moved and is read-only. For the latest updates, please go here.


"No Existing Farm Found" on multi-server remote install


While performing a multi-server installation all servers subsequent to the App server AutoSPInstaller was initiated from failed to join the existing farm and attempted to recreate the configuration database as shown in the following screen shot (open images in new tab if not displayed):
Servers were WS2012 R2 with no internet access (offline install/parallel/remote).

SQL Server connectivity to the configuration database was verified using the ODBC tool on each server where this occurred.

The next step was to start the UI version of psconfig to see if it could locate the farm configuration database and the following error message popped up:
Error text:
"The program can't start because api-ms-win-crt-heap-l1-1-0.dll is missing from your computer. Try reinstalling the program to fix this problem."
Ignoring the error message allowed the configuration wizard to start and it easily found the farm and its configuration database. Closed the wizard since we didn't want to configure via UI.

Next wondered whether the DLL was actually missing, or just not registered. It was not present in the SYSTEM32 folder for the farm we were configuring, but was present on another previously (successfully) installed farm. Found Vlad Castrinescu's post regarding this .dll belonging to a specific Windows Update package, however these servers are automatically patched so no option to install the update package Additionally, the set of servers that had the update showed it had been installed the same day as SharePoint, so it was likely a product of the SharePoint installation rather than a Windows Update process. Discovered the missing DLL in the root folder of the SharePoint 2016 installation media. Although AutoSPInstaller had reported both the prerequisites and the SharePoint binaries had installed correctly, something had not gone well or the group of DLLs present in the installation media would be present.

Noted that the pre-reqs downloaders here and here, as of the date of this post, both link to a different set of the C++ DLLs than TechNet's SharePoint installation guide does. Also noticed TechNet version of the VS2015 redist is 14,231 KB compared to 7019 KB for the version provided in the first two. Thus, even though the install had gone fine using the pre-req builder versions, updated the offline install files for the prerequisites to match the TechNet links. Uninstalled SharePoint on all the problem servers and manually installed those two pre-reqs, then checked to make sure the DLL was present.

Following the above AutoSPInstaller was able to perform a successful remote install on all the servers in the farm. Should there be a check to verify the VS2012/15 DLLs are present before attempting to join the farm?
Closed Feb 16 at 1:42 AM by brianlala
Likely issue with Windows/SP/Prerequisite installer.


brianlala wrote Feb 16 at 1:42 AM

This is all good troubleshooting, and glad to hear it's resolved, but... how is this an "issue" with AutoSPInstaller? Remember, this forum is specifically for suspected issues/bugs with the script itself - not to report on or log issues with Windows, SharePoint, or any of its prerequisites.

As a stretch, one could argue that the check for that DLL could be a feature request, but since (as it's the first I've heard of it) the problem is quite rare, I'm not sure that it would warrant adding more complexity to AutoSPInstaller.

Having said that, this would be a good item to bring up in the Discussions part of this CodePlex site in case anyone runs into it, or maybe even MSDN/TechNet/Stack Overflow etc.

Thanks for raising this, I'll go ahead and close the issue though :)


wrote Feb 16 at 1:42 AM

sqlsolver wrote Feb 16 at 3:05 PM

It could be considered an issue because AutoSPInstaller provides an interface between you and the installation, and the interface is happily reporting pre-reqs are done even though these DLLs are missing. You're right, whether it would warrant 'adding more complexity' in the form of checking whether those files exist after the pre-req install depends on how often the issue is actually encountered. This morning a Google search for the word, 'api-ms-win-crt-heap-l1-1-0.dll' brings up 23,500 results with first page headline titles all about what to do when it's gone missing, so if that problem persists it may be worthwhile to provide some cover for it.

That's my suggestion for today, and I'll follow yours to flag this in other discussion areas. AutoSPInstaller is an absolutely awesome piece of work that allows me to provide repeatable builds with SP2016 MinRoles intact, a functioning search topology and UPS, legible database names and more. Thanks so much for all your hard work on a really outstanding contribution to the SharePoint community.