question

StevenKan-5238 avatar image
0 Votes"
StevenKan-5238 asked StevenKan-5238 edited

WS2012 R2 Essentials Connector fails to install on Win7/64 Pro

We have been running Windows Server 2012 R2 Essentials on a WD Sentinel appliance since 2015, and it's generally been very good as a backup appliance.

But back in April of 2021 I had some corruption in the backup database, so I had to delete the Client Backups folder on the server and start over, which meant reinstalling the client connector on all 20+ client machines, which are a mix of Win7/64 Pro and Win10/64 Pro. We got all the clients reconnected except for one, which happens to be my machine :-(

When I download the connector software from the WS2012R2E machine, it fails with the error, "Windows Server Client Deployment Wizard has stopped working"

Info and things that I've tried without success:

  1. I am logged in as a user with Admin privs. In fact I'm a domain admin.

  2. All the target machines belong to a different domain than the WS2012R2E machine, but I've added the "skip domain join" registry entry prior to the installation attempts.

  3. I've uninstalled the Connector software from the Installed Updates section of the Control Panel before starting the installation procedure.

  4. I've attempted the installation procedure both by downloading a fresh copy of the Connector from the server's web page and by re-running the dowloaded installer. Both fail.

  5. If I uninstall the Connector software and re-download it, I can accept the license terms, and then it performs "downloading connector software" for 30-60 seconds before crashing.

  6. If I don't uninstall the Connector software, and I just re-run the downloaded copy, it crashes almost instantly after I accept the license terms.

  7. I've disabled Webroot, my antivirus software

  8. I've run sfc /scannow, which reported no errors

  9. I've run Windows Update and installed all available updates

  10. I've run pcwUpdateRepair, which is a German-language version of the AU Check utility originally written by Microsoft's Gary Bowers

  11. I've tried with IPv6 turned off and then again with it turned back on. No difference.

  12. I've tried with my PC's IPv4 DNS server manually entered as the WS2012R2E machine's address. No difference.

  13. I've rebooted about a million times.

This was working from January 2015 until April 2021, so there's no fundamental platform incompatibility. I have at least 5 other client machines that are running Win7/64 Pro that are successfully connected to the server and backing up on a daily basis. All the Win7/64 Pro clients have all available Windows updates installed, and all are running the same Webroot anti malware, so there's no fundamental incompatibility there, either.

So there's something unique to my machine, but I can't figure out what it is.

C:\ProgramData\Microsoft\Windows Server\Logs\ClientDeploy.log

contains the following:

---------------------------------------------------------

[5228] 210708.115345.3153: ClientSetup: Start of ClientDeploy
[5228] 210708.115346.1030: General: Initializing...C:\Windows\system32\Essentials\ClientDeploy.exe
[5228] 210708.115346.1339: ClientSetup: Create client deployment registry subkey if necessary
[5228] 210708.115346.2266: ClientSetup: !!!FATAL!!! Unhandled Exception: System.IO.FileNotFoundException: Could not load file or assembly 'System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies. The system cannot find the file specified.
File name: 'System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'
at Microsoft.WindowsServerSolutions.ClientSetup.ClientDeploy.WizData.Load(String[] programArgs)
at Microsoft.WindowsServerSolutions.ClientSetup.ClientDeploy.Program.Main()

WRN: Assembly binding logging is turned OFF.
To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
Note: There is some performance penalty associated with assembly bind failure logging.
To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].

---------------------------------------------------------

Any suggestions?






windows-server-2012windows-server-essentials
5 |1600 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.

StevenKan-5238 avatar image
0 Votes"
StevenKan-5238 answered StevenKan-5238 edited

Success!

After trying all the numbered bullet points from my first post again, and failing, I stumbled upon this article for KB2790621 that provides a different installer for the Connector (instead of downloading directly from the WS2012R2E machine).

Apparently Win7 == Windows6.1, so I downloaded and ran Windows6.1-KB2790621-x64.msu.

That installed without any errors, but didn't launch the wizard. Then I found "Windows Server Essentials Connector Configuration Wizard" in my Start menu. I ran that, which looks 95% similar to the wizard from the WS2012R2E machine, but not identical (e.g. the order of radio buttons for selecting the server is reversed!), and this time, it completed configuration successfully!

I have RDPed into the server box, configured backup, and it's running a backup right now.

Success, although it's taken me at least 10 hours over the last 2 months to get here.

Footnote: the solutions did not require most of the other things I tried in my OP, e.g. I did not disable IPv6, nor specify the server box as my default DNS, nor disable my antivirus or firewall. From where I started, the correct steps were to uninstall .NET 4.8 and then run the Connector software that I downloaded from microsoft.com.

I hope this helps someone else!!

· 1
5 |1600 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.

HI StevenKan-5238,

OK, thanks for sharing your solution.

0 Votes 0 ·
StevenKan-5238 avatar image
0 Votes"
StevenKan-5238 answered StevenKan-5238 published

Some progress, but not enough: I read from this article that a .NET framework version problem might be the cause (even though the error message did not match), so I uninstalled .NET Framework 4.8, rebooted, and re-ran the Connector installer.

This time I was able to get through the following steps:

  1. Accepted the license agreement

  2. Waited 10 minutes while the Connector installer downloaded and installed the correct version of .NET Framework 4.5

  3. Confirm successful finding of the Server

  4. Log in

  5. Enter the Computer Description

  6. Choose whether the Wake or back up only if on (no difference in behavior either way)

  7. Configuring computer . . . , and here's where it crashes with the error, "Windows Server Connector Configuration Wizard has stopped working"

ClientDeploy.log has this at the end, after a bunch of successful entries:

[6072] 210708.132730.6864: ClientSetup: Ensuring that ServiceName=ServiceProviderRegistry to be stopped
[2720] 210708.132730.6864: ClientSetup: Ensuring that ServiceName=WseHealthSvc to be stopped
[5012] 210708.132730.6864: ClientSetup: Ensuring that ServiceName=WseNtfSvc to be stopped
[6072] 210708.132730.7332: ClientSetup: Fail to configure the computer, exception: System.AggregateException: One or more errors occurred. ---> System.InvalidOperationException: Service WseNtfSvc was not found on computer '.'. ---> System.ComponentModel.Win32Exception: The specified service does not exist as an installed service
--- End of inner exception stack trace ---
at System.ServiceProcess.ServiceController.GenerateNames()
at System.ServiceProcess.ServiceController.get_ServiceName()
at System.ServiceProcess.ServiceController.get_DependentServices()
at Microsoft.WindowsServerSolutions.Common.ServiceUtility.EnsureStopped(ServiceController svc, Int32 timeout)
at Microsoft.WindowsServerSolutions.Common.ServiceUtility.EnsureStopped(String serviceName, Int32 timeout)
at Microsoft.WindowsServerSolutions.ClientSetup.ClientServices.<>c.<EnsureStopped>b_2_1(String serviceToStopAndDisable)
at System.Threading.Tasks.Parallel.<>c
DisplayClassf`1.<ForWorker>bc()
at System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask)
at System.Threading.Tasks.Task.<>c
DisplayClass10.<ExecuteSelfReplicating>bf(Object param0)
--- End of inner exception stack trace ---
at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
at System.Threading.Tasks.Task.Wait()
at System.Threading.Tasks.Parallel.ForWorker[TLocal](Int32 fromInclusive, Int32 toExclusive, ParallelOptions parallelOptions, Action`1 body, Action`2 bodyWithState, Func`4 bodyWithLocal, Func`1 localInit, Action`1 localFinally)
at System.Threading.Tasks.Parallel.ForEachWorker[TSource,TLocal](IEnumerable`1 source, ParallelOptions parallelOptions, Action`1 body, Action`2 bodyWithState, Action`3 bodyWithStateAndIndex, Func`4 bodyWithStateAndLocal, Func`5 bodyWithEverything, Func`1 localInit, Action`1 localFinally)
at System.Threading.Tasks.Parallel.ForEach[TSource](IEnumerable`1 source, Action`1 body)
at Microsoft.WindowsServerSolutions.ClientSetup.ClientServices.<>c.<EnsureStopped>b
2_0()
at Microsoft.WindowsServerSolutions.ClientSetup.ClientServices.ServiceActionWrapper(Action serviceAction)
at Microsoft.WindowsServerSolutions.ClientSetup.ClientDeploy.ConfigureComputerTask.Run(WizData data)
---> (Inner Exception #0) System.InvalidOperationException: Service WseNtfSvc was not found on computer '.'. ---> System.ComponentModel.Win32Exception: The specified service does not exist as an installed service
--- End of inner exception stack trace ---
at System.ServiceProcess.ServiceController.GenerateNames()
at System.ServiceProcess.ServiceController.get_ServiceName()
at System.ServiceProcess.ServiceController.get_DependentServices()
at Microsoft.WindowsServerSolutions.Common.ServiceUtility.EnsureStopped(ServiceController svc, Int32 timeout)
at Microsoft.WindowsServerSolutions.Common.ServiceUtility.EnsureStopped(String serviceName, Int32 timeout)
at Microsoft.WindowsServerSolutions.ClientSetup.ClientServices.<>c.<EnsureStopped>b
2_1(String serviceToStopAndDisable)
at System.Threading.Tasks.Parallel.<>c
DisplayClassf`1.<ForWorker>bc()
at System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask)
at System.Threading.Tasks.Task.<>c
DisplayClass10.<ExecuteSelfReplicating>b_f(Object param0)<---

---> (Inner Exception #1) System.InvalidOperationException: Service ServiceProviderRegistry was not found on computer '.'. ---> System.ComponentModel.Win32Exception: The specified service does not exist as an installed service
--- End of inner exception stack trace ---
at System.ServiceProcess.ServiceController.GenerateNames()
at System.ServiceProcess.ServiceController.get_ServiceName()
at System.ServiceProcess.ServiceController.get_DependentServices()
at Microsoft.WindowsServerSolutions.Common.ServiceUtility.EnsureStopped(ServiceController svc, Int32 timeout)
at Microsoft.WindowsServerSolutions.Common.ServiceUtility.EnsureStopped(String serviceName, Int32 timeout)
at Microsoft.WindowsServerSolutions.ClientSetup.ClientServices.<>c.<EnsureStopped>b_2_1(String serviceToStopAndDisable)
at System.Threading.Tasks.Parallel.<>c
DisplayClassf`1.<ForWorker>bc()
at System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask)
at System.Threading.Tasks.Task.<>c
DisplayClass10.<ExecuteSelfReplicating>b_f(Object param0)<---

---> (Inner Exception #2) System.InvalidOperationException: Service WseHealthSvc was not found on computer '.'. ---> System.ComponentModel.Win32Exception: The specified service does not exist as an installed service
--- End of inner exception stack trace ---
at System.ServiceProcess.ServiceController.GenerateNames()
at System.ServiceProcess.ServiceController.get_ServiceName()
at System.ServiceProcess.ServiceController.get_DependentServices()
at Microsoft.WindowsServerSolutions.Common.ServiceUtility.EnsureStopped(ServiceController svc, Int32 timeout)
at Microsoft.WindowsServerSolutions.Common.ServiceUtility.EnsureStopped(String serviceName, Int32 timeout)
at Microsoft.WindowsServerSolutions.ClientSetup.ClientServices.<>c.<EnsureStopped>b_2_1(String serviceToStopAndDisable)
at System.Threading.Tasks.Parallel.<>c
DisplayClassf`1.<ForWorker>bc()
at System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask)
at System.Threading.Tasks.Task.<>c
DisplayClass10.<ExecuteSelfReplicating>b_f(Object param0)<---

[6072] 210708.132730.7332: ClientSetup: Exiting ConfigureComputerTask.Run()
[5536] 210708.132730.7800: ClientSetup: !!!FATAL!!! Unhandled Exception: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> Microsoft.WindowsServerSolutions.ClientSetup.ClientSetupException: Unexpected Error occured: DeploymentStage=ConfiguringComputer ---> System.AggregateException: One or more errors occurred. ---> System.InvalidOperationException: Service WseNtfSvc was not found on computer '.'. ---> System.ComponentModel.Win32Exception: The specified service does not exist as an installed service
--- End of inner exception stack trace ---
at System.ServiceProcess.ServiceController.GenerateNames()
at System.ServiceProcess.ServiceController.get_ServiceName()
at System.ServiceProcess.ServiceController.get_DependentServices()
at Microsoft.WindowsServerSolutions.Common.ServiceUtility.EnsureStopped(ServiceController svc, Int32 timeout)
at Microsoft.WindowsServerSolutions.Common.ServiceUtility.EnsureStopped(String serviceName, Int32 timeout)
at Microsoft.WindowsServerSolutions.ClientSetup.ClientServices.<>c.<EnsureStopped>b_2_1(String serviceToStopAndDisable)
at System.Threading.Tasks.Parallel.<>c
DisplayClassf`1.<ForWorker>bc()
at System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask)
at System.Threading.Tasks.Task.<>c
DisplayClass10.<ExecuteSelfReplicating>bf(Object param0)
--- End of inner exception stack trace ---
at Microsoft.WindowsServerSolutions.ClientSetup.ClientDeploy.ConfigureComputerTask.Run(WizData data)
at Microsoft.WindowsServerSolutions.ClientSetup.ClientDeploy.ConnectorWizardForm.RunTasks(Object sender, DoWorkEventArgs workEventArgs)
at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)
--- End of inner exception stack trace ---
at Microsoft.WindowsServerSolutions.ClientSetup.ClientDeploy.ConnectorWizardForm.<>c
DisplayClass45_0.<m_wizardPageConfiguringComputer_PageEnter>b_2(Object worker, RunWorkerCompletedEventArgs completedEventArgs)
--- End of inner exception stack trace ---
at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
at System.Delegate.DynamicInvokeImpl(Object[] args)
at System.Windows.Forms.Control.InvokeMarshaledCallbackDo(ThreadMethodEntry tme)
at System.Windows.Forms.Control.InvokeMarshaledCallbackHelper(Object obj)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Windows.Forms.Control.InvokeMarshaledCallback(ThreadMethodEntry tme)
at System.Windows.Forms.Control.InvokeMarshaledCallbacks()
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
at System.Windows.Forms.Form.ShowDialog(IWin32Window owner)
at Microsoft.WindowsServerSolutions.ClientSetup.ClientDeploy.Program.Main()
[5536] 210708.132839.7300: ServerDiscovery:HostsFileUpdater: Removing hosts file entry: BACKUPSERVER

and EssentialsTrayApp.S-1-5-21-594055156-3650564323-2490849351-1110.log

now has the following entries:

[07/08/2021 12:07:17 10b8] Intialize SQM failed. Error Code: 0X80004005
[07/08/2021 12:07:17 10b8] ClientStatus::IsOnline GetRegValue failed. Error code: 2
[07/08/2021 12:07:17 10b8] TrayManager::UpdateTrayStatus ClientStatus::IsOnline failed. Use Offline as default value. Error code: 0X80070002
[07/08/2021 12:07:17 10b8] ClientStatus::GetServerProtocolVersion GetRegValue failed with error code: 2
[07/08/2021 12:07:17 10b8] GetServerProtocolVersion failed. Error code: 0X80070002.
[07/08/2021 12:07:17 10b8] TrayManager::UpdateTrayStatus ClientStatus::GetProtocolStatus failed. Use PROTOCOL_STATUS_MATCH as default value. Error code: 0X80070002
[07/08/2021 12:07:17 10b8] Get server name failed. Error Code: 2
[07/08/2021 12:07:17 10b8] TrayManager::UpdateTrayStatus Utils::GetServerName failed. Use empty tooltip by default.
[07/08/2021 12:07:17 10b8] ClientStatus::IsOnline GetRegValue failed. Error code: 2
[07/08/2021 12:07:17 10b8] OnCreate ClientStatus::IsOnline failed. Use Offline as default value. Error code: 0X80070002
[07/08/2021 12:07:17 10b8] ClientStatus::GetServerProtocolVersion GetRegValue failed with error code: 2
[07/08/2021 12:07:17 10b8] GetServerProtocolVersion failed. Error code: 0X80070002.
[07/08/2021 12:07:17 10b8] ClientStatusOperation::ShowUpdateNotification get protocol status failed. Error code: 0X80070002
[07/08/2021 12:07:17 10b8] CreateFile failed with error code: 2
[07/08/2021 12:07:17 10b8] RwaLinkUpdateOperation GetRegValue failed to get ServerRWAAddress. Error code: 2
[07/08/2021 12:07:17 10b8] RwaLinkUpdateOperation GetRwaAddress failed. Use Server Name as default value.
[07/08/2021 12:07:17 10b8] Get server name failed. Error Code: 2
[07/08/2021 12:07:17 10b8] RwaLinkUpdateOperation GetServerName failed.
[07/08/2021 12:07:17 10b8] RwaLinkUpdateOperation::Load UpdateRwaLink failed. Error code: 0X80004005
[07/08/2021 12:07:17 10b8] GetRegDWORDValue failed. Error code: 2
[07/08/2021 12:07:17 10b8] Unable to get CurrentLaunchpadLogonUser.


5 |1600 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.