sourcetree stopped working after windows 10 upgrade
Asked by D Smith:

Just upgraded to windows 10, sourcetree now fails to start. It shows a splash and thats it.

I've tried the standard unintstall/reinstall, deleting local appdata folder, tried installing an older version and I was unable to locate the event logs described here: <https://confluence.atlassian.com/sourcetreekb/sourcetree-crashes-on-startup-831655339.html>

My sourcetreelog file shows:

ERROR \[2018-10-03 18:43:17,425\] \[1\] \[SourceTree.App+\<OnStartup\>d__6\] \[MoveNext\] - Failed to start  
System.TypeLoadException: Method 'GetValue' in type 'MS.Internal.SystemDataExtension' from assembly 'PresentationFramework-SystemData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' does not have an implementation.  
at System.Reflection.RuntimeAssembly.GetType(RuntimeAssembly assembly, String name, Boolean throwOnError, Boolean ignoreCase, ObjectHandleOnStack type)  
at System.Reflection.RuntimeAssembly.GetType(String name, Boolean throwOnError, Boolean ignoreCase)  
at System.Activator.CreateInstance(String assemblyString, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object\[\] args, CultureInfo culture, Object\[\] activationAttributes, Evidence securityInfo, StackCrawlMark\& stackMark)  
at System.Activator.CreateInstance(String assemblyName, String typeName)  
at MS.Internal.AssemblyHelper.LoadExtensionFor(String name)  
at MS.Internal.AssemblyHelper.ExtensionsForSystemData(Boolean force)  
at MS.Internal.SystemDataHelper.IsDataSetCollectionProperty(PropertyDescriptor pd)  
at MS.Internal.Data.ValueTable.ShouldCache(Object item, PropertyDescriptor pd)  
at MS.Internal.Data.DataBindEngine.RegisterForCacheChanges(Object item, Object descriptor)  
at MS.Internal.Data.PropertyPathWorker.ReplaceItem(Int32 k, Object newO, Object parent)  
at MS.Internal.Data.PropertyPathWorker.UpdateSourceValueState(Int32 k, ICollectionView collectionView, Object newValue, Boolean isASubPropertyChange)  
at MS.Internal.Data.ClrBindingWorker.AttachDataItem()  
at System.Windows.Data.BindingExpression.Activate(Object item)  
at System.Windows.Data.BindingExpression.AttachToContext(AttachAttempt attempt)  
at System.Windows.Data.BindingExpression.MS.Internal.Data.IDataBindEngineClient.AttachToContext(Boolean lastChance)  
at MS.Internal.Data.DataBindEngine.Task.Run(Boolean lastChance)  
at MS.Internal.Data.DataBindEngine.Run(Object arg)  
at System.Windows.ContextLayoutManager.fireLayoutUpdateEvent()  
at System.Windows.ContextLayoutManager.UpdateLayout()  
at System.Windows.Interop.HwndSource.SetLayoutSize()  
at System.Windows.Interop.HwndSource.set_RootVisualInternal(Visual value)  
at System.Windows.Window.SetRootVisual()  
at System.Windows.Window.SetRootVisualAndUpdateSTC()  
at System.Windows.Window.SetupInitialState(Double requestedTop, Double requestedLeft, Double requestedWidth, Double requestedHeight)  
at System.Windows.Window.CreateSourceWindow(Boolean duringShow)  
at System.Windows.Window.ShowHelper(Object booleanBox)  
at SourceTree.AppRoot.\<OnStartup\>d__34.MoveNext()  
--- End of stack trace from previous location where exception was thrown ---  
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()  
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)  
at SourceTree.App.\<OnStartup\>d__6.MoveNext()  
ERROR \[2018-10-03 18:43:17,600\] \[9\] \[SourceTree.Scheduler.SourceTreeDispatcher\] \[get_Dispatcher\] - Unable to get Dispatcher Application.Current is null  
ERROR \[2018-10-03 18:43:17,600\] \[9\] \[SourceTree.Scheduler.SourceTreeDispatcher\] \[InvokeAsync\] - Unable to invoke async action \[System.Action\] dispatcher is null

Any thoughts?


Answers:
author: minnsey
body: Hi  

It looks like a .NET framework issue. Can you confirm you have .NET 4.71 or higher installed, Sourcetree should check for this during install, but a few earlier Windows Insider Preview builds had bugs in this area.

comments: author: D Smith
body: .net 4.7.1 or .2 was installed on win7 prior to the upgrade. I also ran this:

<https://support.microsoft.com/en-us/help/4073120/microsoft-net-framework-4-7-2-for-windows-10-version-1709-and-windows>

and tried uninstalling/reinstalling and repairing. No change.


author: D Smith
body: Still not sure whats going on but its now fixed via the shotgun approach. At some point during the uninstall/reinstall the windows components installed switched over from 4.6 to 4.7, I 'uninstalled' 4.7 and reinstalled it. I also updated my graphics drivers (I saw some comment on a forum about this being related to d3d), and apparently there were some windows updates that needed to be applied. One of those things fixed it :/


author: minnsey
body: Glad you are back up and running


author: Peter Smith
body: Initially, SourceTree 3.1.2 was installed and working on Windows7

Then I upgraded to Windows10 (1709 patch) and I hit this exact error. Our log entries match.

.Net 4.7.2 was installed, removed, reinstalled. Started removing older versions of .Net.

Went around in circles with older versions of SourceTree, looking at other users configuration, more searches based upon new errors from sourcetree.log.

Finally, removed SourceTree and re-ran Windows10 1709 patch. Essentially, re-upgraded to Windows10. That is what worked, finally. Final config is Windows 10 with 1709 patch from Dec 2017 for x64 - 100406711, .Net 4.7.2 SDK and SourceTreeEnterpriseSetup_3.1.2.msi

\* offline install