title: SourceTree Installation Fail on Windows 10: "CheckForUpdateImpl: Couldn't write out staging user ID, this user probably shouldn't get beta anything: "
body: <p>I am trying to install SourceTree to my brand new Acer Laptop just arrived, the moment I run the installer downloaded from Atlassian "SourceTreeSetup-2.1.11.0",  it flashed for a second then pop up error message:</p>
  
  <p><img src="https://i.stack.imgur.com/ZocGV.png" alt="enter image description here"></p>
  
  <p>This is the full setup error log:</p>
  
  <pre><code>2017-09-02 11:11:32&gt; Program: Starting Squirrel Updater: --install . --rerunningWithoutUAC
  2017-09-02 11:11:32&gt; Program: Starting install, writing to C:\Users\blackhatSolo\AppData\Local\SquirrelTemp
  2017-09-02 11:11:32&gt; Program: About to install to: C:\Users\blackhatSolo\AppData\Local\SourceTree
  2017-09-02 11:11:32&gt; CheckForUpdateImpl: Couldn't write out staging user ID, this user probably shouldn't get beta anything: System.IO.DirectoryNotFoundException: Could not find a part of the path 'C:\Users\blackhatSolo\AppData\Local\SourceTree\packages\.betaId'.
     at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
     at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
     at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
     at System.IO.StreamWriter.CreateFile(String path, Boolean append, Boolean checkHost)
     at System.IO.StreamWriter..ctor(String path, Boolean append, Encoding encoding, Int32 bufferSize, Boolean checkHost)
     at System.IO.File.InternalWriteAllText(String path, String contents, Encoding encoding, Boolean checkHost)
     at System.IO.File.WriteAllText(String path, String contents, Encoding encoding)
     at Squirrel.UpdateManager.CheckForUpdateImpl.getOrCreateStagedUserId()
  2017-09-02 11:11:32&gt; CheckForUpdateImpl: Failed to load local releases, starting from scratch: System.IO.DirectoryNotFoundException: Could not find a part of the path 'C:\Users\blackhatSolo\AppData\Local\SourceTree\packages\RELEASES'.
     at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
     at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
     at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
     at Squirrel.Utility.LoadLocalReleases(String localReleaseFile)
     at Squirrel.UpdateManager.CheckForUpdateImpl.&lt;CheckForUpdate&gt;d__2.MoveNext()
  2017-09-02 11:11:32&gt; CheckForUpdateImpl: Reading RELEASES file from C:\Users\blackhatSolo\AppData\Local\SquirrelTemp
  2017-09-02 11:11:32&gt; CheckForUpdateImpl: First run or local directory is corrupt, starting from scratch
  2017-09-02 11:11:32&gt; ApplyReleasesImpl: Writing files to app directory: C:\Users\blackhatSolo\AppData\Local\SourceTree\app-2.1.11
  2017-09-02 11:11:36&gt; LogHost: Rigging execution stub for SourceTree_ExecutionStub.exe to C:\Users\blackhatSolo\AppData\Local\SourceTree\SourceTree.exe
  2017-09-02 11:11:38&gt; ApplyReleasesImpl: Squirrel Enabled Apps: [C:\Users\blackhatSolo\AppData\Local\SourceTree\app-2.1.11\SourceTree.exe]
  2017-09-02 11:11:41&gt; ApplyReleasesImpl: Starting fixPinnedExecutables
  2017-09-02 11:11:41&gt; ApplyReleasesImpl: Examining Pin: File Explorer.lnk
  2017-09-02 11:11:41&gt; ApplyReleasesImpl: Examining Pin: Google Chrome.lnk
  2017-09-02 11:11:41&gt; ApplyReleasesImpl: Fixing up tray icons
  2017-09-02 11:11:41&gt; ApplyReleasesImpl: Couldn't rewrite shim RegKey, most likely no apps are shimmed: System.NullReferenceException: Object reference not set to an instance of an object.
     at Squirrel.UpdateManager.ApplyReleasesImpl.&lt;unshimOurselves&gt;b__13_0(RegistryView view)
  2017-09-02 11:11:41&gt; ApplyReleasesImpl: Couldn't rewrite shim RegKey, most likely no apps are shimmed: System.NullReferenceException: Object reference not set to an instance of an object.
     at Squirrel.UpdateManager.ApplyReleasesImpl.&lt;unshimOurselves&gt;b__13_0(RegistryView view)
  2017-09-02 11:11:41&gt; ApplyReleasesImpl: cleanDeadVersions: for version 2.1.11
  2017-09-02 11:11:41&gt; ApplyReleasesImpl: cleanDeadVersions: exclude folder app-2.1.11
  2017-09-02 14:10:34&gt; Program: Starting Squirrel Updater: --install . --rerunningWithoutUAC
  2017-09-02 14:10:34&gt; Program: Starting install, writing to C:\Users\blackhatSolo\AppData\Local\SquirrelTemp
  2017-09-02 14:10:34&gt; Program: About to install to: C:\Users\blackhatSolo\AppData\Local\SourceTree
  2017-09-02 14:10:34&gt; Program: Install path C:\Users\blackhatSolo\AppData\Local\SourceTree already exists, burning it to the ground
  2017-09-02 14:10:34&gt; IEnableLogger: Failed to remove existing directory on full install, is the app still running???: System.UnauthorizedAccessException: Access to the path 'C:\Users\blackhatSolo\AppData\Local\SourceTree\app-2.1.11\tools\putty\plink.exe' is denied.
     at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
     at System.IO.File.SetAttributes(String path, FileAttributes fileAttributes)
     at Squirrel.Utility.&lt;&gt;c.&lt;DeleteDirectory&gt;b__19_0(String file)
     at Squirrel.Utility.&lt;&gt;c__DisplayClass12_1`1.&lt;ForEachAsync&gt;b__1()
     at System.Threading.Tasks.Task.InnerInvoke()
     at System.Threading.Tasks.Task.Execute()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;&gt;c__DisplayClass13_0`1.&lt;&lt;ForEachAsync&gt;b__1&gt;d.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;DeleteDirectory&gt;d__19.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;&gt;c.&lt;&lt;DeleteDirectory&gt;b__19_1&gt;d.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;&gt;c__DisplayClass13_0`1.&lt;&lt;ForEachAsync&gt;b__1&gt;d.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;DeleteDirectory&gt;d__19.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;&gt;c.&lt;&lt;DeleteDirectory&gt;b__19_1&gt;d.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;&gt;c__DisplayClass13_0`1.&lt;&lt;ForEachAsync&gt;b__1&gt;d.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;DeleteDirectory&gt;d__19.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;&gt;c.&lt;&lt;DeleteDirectory&gt;b__19_1&gt;d.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;&gt;c__DisplayClass13_0`1.&lt;&lt;ForEachAsync&gt;b__1&gt;d.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;DeleteDirectory&gt;d__19.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;LogIfThrows&gt;d__42.MoveNext()
  2017-09-02 14:10:34&gt; Unhandled exception: System.AggregateException: One or more errors occurred. ---&gt; System.UnauthorizedAccessException: Access to the path 'C:\Users\blackhatSolo\AppData\Local\SourceTree\app-2.1.11\tools\putty\plink.exe' is denied.
     at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
     at System.IO.File.SetAttributes(String path, FileAttributes fileAttributes)
     at Squirrel.Utility.&lt;&gt;c.&lt;DeleteDirectory&gt;b__19_0(String file)
     at Squirrel.Utility.&lt;&gt;c__DisplayClass12_1`1.&lt;ForEachAsync&gt;b__1()
     at System.Threading.Tasks.Task.InnerInvoke()
     at System.Threading.Tasks.Task.Execute()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;&gt;c__DisplayClass13_0`1.&lt;&lt;ForEachAsync&gt;b__1&gt;d.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;DeleteDirectory&gt;d__19.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;&gt;c.&lt;&lt;DeleteDirectory&gt;b__19_1&gt;d.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;&gt;c__DisplayClass13_0`1.&lt;&lt;ForEachAsync&gt;b__1&gt;d.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;DeleteDirectory&gt;d__19.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;&gt;c.&lt;&lt;DeleteDirectory&gt;b__19_1&gt;d.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;&gt;c__DisplayClass13_0`1.&lt;&lt;ForEachAsync&gt;b__1&gt;d.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;DeleteDirectory&gt;d__19.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;&gt;c.&lt;&lt;DeleteDirectory&gt;b__19_1&gt;d.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;&gt;c__DisplayClass13_0`1.&lt;&lt;ForEachAsync&gt;b__1&gt;d.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;DeleteDirectory&gt;d__19.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;LogIfThrows&gt;d__42.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
     at Squirrel.Update.Program.&lt;Install&gt;d__4.MoveNext()
     --- End of inner exception stack trace ---
     at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
     at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
     at System.Threading.Tasks.Task.Wait()
     at Squirrel.Update.Program.executeCommandLine(String[] args)
     at Squirrel.Update.Program.main(String[] args)
  ---&gt; (Inner Exception #0) System.UnauthorizedAccessException: Access to the path 'C:\Users\blackhatSolo\AppData\Local\SourceTree\app-2.1.11\tools\putty\plink.exe' is denied.
     at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
     at System.IO.File.SetAttributes(String path, FileAttributes fileAttributes)
     at Squirrel.Utility.&lt;&gt;c.&lt;DeleteDirectory&gt;b__19_0(String file)
     at Squirrel.Utility.&lt;&gt;c__DisplayClass12_1`1.&lt;ForEachAsync&gt;b__1()
     at System.Threading.Tasks.Task.InnerInvoke()
     at System.Threading.Tasks.Task.Execute()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;&gt;c__DisplayClass13_0`1.&lt;&lt;ForEachAsync&gt;b__1&gt;d.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;DeleteDirectory&gt;d__19.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;&gt;c.&lt;&lt;DeleteDirectory&gt;b__19_1&gt;d.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;&gt;c__DisplayClass13_0`1.&lt;&lt;ForEachAsync&gt;b__1&gt;d.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;DeleteDirectory&gt;d__19.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;&gt;c.&lt;&lt;DeleteDirectory&gt;b__19_1&gt;d.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;&gt;c__DisplayClass13_0`1.&lt;&lt;ForEachAsync&gt;b__1&gt;d.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;DeleteDirectory&gt;d__19.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;&gt;c.&lt;&lt;DeleteDirectory&gt;b__19_1&gt;d.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;&gt;c__DisplayClass13_0`1.&lt;&lt;ForEachAsync&gt;b__1&gt;d.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;DeleteDirectory&gt;d__19.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at Squirrel.Utility.&lt;LogIfThrows&gt;d__42.MoveNext()
  --- End of stack trace from previous location where exception was thrown ---
     at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
     at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
     at Squirrel.Update.Program.&lt;Install&gt;d__4.MoveNext()&lt;---
  </code></pre>
  
  <p>Anyone happen to know solution for this issue ?? </p>