I'm trying to distribute my C# application via Squirrel. Via Squirrel releasify, I have created a Setup exe to install that. Most of this works - the setup extracts my app's files and launches the application (currently in version 0.0.1).
Once done, %localappdata%\MyApp does contain the "app-0.0.1" subfolder with all its data, and also contains an Update.exe in its root folder. However, there no MyApp.exe in the main folder, i.e.:
- %localappdata%\MyApp\app-0.0.1\MyApp.exe exist, but
- %localappdata%\MyApp\MyApp.exe does not exist.
I don't see any error messages anywhere - does anybody have an idea what's going on there? Squirrel's log says:
2018-03-14 13:47:56> Program: Starting Squirrel Updater: --install .
2018-03-14 13:47:56> Program: Starting install, writing to C:\Users\MyUsername\AppData\Local\SquirrelTemp
2018-03-14 13:47:56> Program: About to install to: C:\Users\MyUsername\AppData\Local\MyApp
2018-03-14 13:47:56> 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\MyUsername\AppData\Local\MyApp\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()
2018-03-14 13:47:56> CheckForUpdateImpl: Failed to load local releases, starting from scratch: System.IO.DirectoryNotFoundException: Could not find a part of the path 'C:\Users\MyUsername\AppData\Local\MyApp\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.<CheckForUpdate>d__2.MoveNext()
2018-03-14 13:47:56> CheckForUpdateImpl: Reading RELEASES file from C:\Users\MyUsername\AppData\Local\SquirrelTemp
2018-03-14 13:47:56> CheckForUpdateImpl: First run or local directory is corrupt, starting from scratch
2018-03-14 13:47:56> ApplyReleasesImpl: Writing files to app directory: C:\Users\MyUsername\AppData\Local\MyApp\app-0.0.1
2018-03-14 13:47:57> ApplyReleasesImpl: Squirrel Enabled Apps: [C:\Users\MyUsername\AppData\Local\MyApp\app-0.0.1\MyApp.exe]
2018-03-14 13:47:59> ApplyReleasesImpl: Starting fixPinnedExecutables
2018-03-14 13:47:59> ApplyReleasesImpl: Examining Pin: Internet Explorer.lnk
2018-03-14 13:47:59> ApplyReleasesImpl: Examining Pin: Outlook 2013.lnk
2018-03-14 13:47:59> ApplyReleasesImpl: Examining Pin: Windows Explorer.lnk
2018-03-14 13:47:59> ApplyReleasesImpl: Fixing up tray icons
2018-03-14 13:47:59> ApplyReleasesImpl: cleanDeadVersions: for version 0.0.1
2018-03-14 13:47:59> ApplyReleasesImpl: cleanDeadVersions: exclude folder app-0.0.1