GUI TrayIcon crash using Windows task planner

Hi all,

after updating to the last but one beta-release in Dec '24, the tray icon application crashes after some time of running (i.e., the process disappears from Windows task manager and the icon from the taskbar, no backups are done till restarting the application). As far as I can see, this is independent of the question whether a job has already been executed or not. This does not happen if Duplicati was started manually (see below for the setup). The setup I use is as follows:

System: Win 10 22H2 64bit, latest patches all installed
Duplicati 2.1.0.5 stable (problem occures since version 2.1.0.2 beta)
Duplicati.GUI.TrayIcon.exe started via Windows task scheduler, in order to give it elevated rights (I need VSS to backup open files);

  • Windows user logon used as trigger;
  • task executed as standard user with elevated rights (tested running as “System”-process; doesn’t work at all);
  • task set to delay one minute after logon (tested with different settings - no effect);
  • Duplicati itself set to delay any activity for 30 sec after launch (tested with different settings - no effect);
  • three backup jobs configured, two using a local hard drive (USB), one MS OneDrive (problem occured for the first time before the OneDrive job was set up);
  • all tasks set to be halted on battery power.

The backups themselves run without trouble (as long as I remember plugging the external drive in, but that’s another question, of course). What I tried so far is de-installing and re-installing versions 2.1.0.2 through 2.1.0.4, and finally updating to 2.1.0.5 yesterday, to no effect. I didn’t find any crash-logfiles or error events in Windows. Also, before 2.1.0.2, the said setup worked for more than two years on the same system without trouble.

I’ve got not even a clue where else to look for a reason (or if I’m just missing something right in front of me). Any ideas?

Welcome to the forum @Deoquaerus

That’s unfortunate, as starting from terminal might say something informative.

Where are application crash logs? suggests places to check.

v2.1.0.2_beta_2024-11-29

The change log highlights the extensive changes since 2.0. Some new issues arose.

FWIW (and I wish it wasn’t necessary), I do that the clunky way with this on shortcut:

This brings up UAC prompt. After satisfying that, shortcut runs a batch startup script, which leaves a terminal window around. If it fails that way, maybe it’ll say something.

Hopefully you’ll find something in the Windows Application event log, e.g. from .NET.

Thanks ts678; I thought I’d checked all the places listed for containing logfiles - but it seems that I’ve missed something in the first place, as indeed .NET throws errors related to Duplicati in Windows error reporting. At least today the timestamp (10:16 AM today, if this is of any relevance) fits the moment I became aware of the tray icon “vanishing” (indeed: it’s there, and on mouseover, it vanishes…). The same report shows every day, at different times - I couldn’t figure out any regularity. Especially, it seemingly doesn’t depend on jobs being executed or not yet. The only clue I have so far is, that the “vanishing” (and, probably, the errors I’m talking about) happens once after Duplicati is launched by the Win10 task planner. And here’s the Gobbledegook the error reporting “tells” me:

QUOTE>>>

(Source: .NET runtime
Event ID: 1000)

Category: Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware
EventId: 1
SpanId: [[omitted*]]
TraceId: [[omitted*]]
ParentId: 0000000000000000
ConnectionId: [[omitted*]]
RequestId: [[omitted*]]
RequestPath: /api/v1/auth/refresh

An unhandled exception has occurred while executing the request.

Exception:
Duplicati.WebserverCore.Exceptions.UnauthorizedException: Authorization failed due to missing cookie.
at Duplicati.WebserverCore.Endpoints.V1.Auth.<>c.<b__3_0>d.MoveNext()
— End of stack trace from previous location —
at Microsoft.AspNetCore.Http.RequestDelegateFactory.g__ExecuteAwaited|92_0[T](Task1 task) at Duplicati.WebserverCore.Middlewares.HostnameFilter.InvokeAsync(EndpointFilterInvocationContext context, EndpointFilterDelegate next) at Duplicati.WebserverCore.Middlewares.LanguageFilter.InvokeAsync(EndpointFilterInvocationContext context, EndpointFilterDelegate next) at Microsoft.AspNetCore.Http.RequestDelegateFactory.<ExecuteValueTaskOfObject>g__ExecuteAwaited|129_0(ValueTask1 valueTask, HttpContext httpContext, JsonTypeInfo`1 jsonTypeInfo)
at Duplicati.WebserverCore.Middlewares.WebsocketExtensions.<>c__DisplayClass0_0.<b__0>d.MoveNext()
— End of stack trace from previous location —
at Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddlewareImpl.g__Awaited|10_0(ExceptionHandlerMiddlewareImpl middleware, HttpContext context, Task task)

<<<END QUOTE

Can anyone interpret this? I can’t, as I’m not a programmer at all.

  • Are these IDs of any relevance/importance? I can report them, too, if necessary; but as it says “ID” and I have no idea to what they refer, I’d rather leave them out in the first place. Maybe I’m paranoid.

Take Care,
Deoquaerus.

Hopefully the Duplicati programmer can help. Some previous notes:

Except yours wasn’t log output. For the first, invalid password shouldn’t be fatal.

I think the login attempts can come from the open browser tabs, or the TrayIcon.
For browser tabs, you could either start logging or close them and see if it helps.

Logging depends on browser, but it’s often in developer tools or click on F12 key. Goal is to see what went in, although I wouldn’t expect much without user action.

What browser is this? If you close Duplicati tabs, it might not matter. Otherwise, it might. Refresh seen is the kind of thing that might happen after 15 active minutes.

Developer might have a better idea.

This is an error message from the webserver. It means that the login did not succeed because the request had no previously created authentication tokens (stored in a browser cookie).

It is normal and will happen if you try to access the WebUI without being logged in.
It is not a crash, it is just logging that the authentication code threw an exception.

No, they are only relevant for debugging locally on the machine.

Windows has long had a quirk where a TrayIcon can stay visually after it crashed. But it is also possible that the mouse-over is triggering the crash. @ts678 did you report seeing that at some point?

Do you notice any correlation between the time it stops and the messages? I am fishing a bit here, because without an error message of sorts, it is almost impossible to figure out what happens.

Do you happen to see other messages in the event log that could be relevant? Usually crashes are logged in Windows / Application in EventViewer.

I can’t find it now, but at one point I thought mouse-over would eventually crash, however I think conclusion was it was a delayed crash happening by itself, and mouse-over just made the icon vanish.

I can now confirm that it is not mouseover which causes the crash, at least at my machine. At least once I found that Duplicati, after being started (prooved by the job logs), had crashed already before I looked at the systray for the first time at that day.

No, not any more. I thought so in the first place, but I’ve monitored this (as far as my work admitted me to do so) for the last couple of days, but there is no coincidence.

I use Firefox (most recent stable release at a time), but I don’t open Duplicati tabs usually - the normal setting for me would be to have Duplicati started automatically, and not looking at it until I need a backup (so, hopefully, never [again]…). From time to time, but not on a regular basis, I would check for error warnings. Only now, as I know that Duplicati doesn’t work as it should, I have a closer look at it.

With some digging into Windows error reporting - I went to places I’ve never been before - I found another error report. One stems from Feb '25, after a row of dozens of errors of the server-login-type (all with the same timestamp, one second before this one):

REPORT DATA>>
Name der fehlerhaften Anwendung: Duplicati.GUI.TrayIcon.exe, Version: 2.1.0.4, Zeitstempel: 0x66470000
Name des fehlerhaften Moduls: coreclr.dll, Version: 8.0.624.26715, Zeitstempel: 0x66479681
Ausnahmecode: 0xc00000fd
Fehleroffset: 0x0000000000071bd7
ID des fehlerhaften Prozesses: 0x16e8
Startzeit der fehlerhaften Anwendung: 0x01db85fd5b1558d2
Pfad der fehlerhaften Anwendung: c:\Programme\duplicati 2\Duplicati.GUI.TrayIcon.exe
Pfad des fehlerhaften Moduls: c:\Programme\duplicati 2\coreclr.dll
Berichtskennung: e6eb93c0-1eee-4989-be48-1dee3f93d4ce
Vollständiger Name des fehlerhaften Pakets:
Anwendungs-ID, die relativ zum fehlerhaften Paket ist:
<<END DATA

To this event I also found a error report file (filetype WER), which contains this:

REPORT FILE DATA>>
Version=1
EventType=APPCRASH
EventTime=133847937152331329
ReportType=2
Consent=1
UploadTime=133847937206037340
ReportStatus=268435456
ReportIdentifier=56da7604-2e1d-4cdd-b2d9-fab8039d8c86
IntegratorReportIdentifier=e6eb93c0-1eee-4989-be48-1dee3f93d4ce
Wow64Host=34404
NsAppName=Duplicati.GUI.TrayIcon.exe
OriginalFilename=Duplicati.GUI.TrayIcon.dll
AppSessionGuid=000016e8-0006-0395-d258-155bfd85db01
TargetAppId=W:00065fa3275ad62e539d2570597d12d1326500000000!0000c7bb35e490ddb7bf54159cd6f10b4e5f13f2d935!Duplicati.GUI.TrayIcon.exe
TargetAppVer=2024//05//17:06:58:08!47825!Duplicati.GUI.TrayIcon.exe
BootId=4294967295
TargetAsId=4268
IsFatal=1
EtwNonCollectReason=1
Response.BucketId=37312d381c48e1fcfe0b9b75cc080b5e
Response.BucketTable=4
Response.LegacyBucketId=2164994976118213470
Response.type=4
Sig[0].Name=Anwendungsname
Sig[0].Value=Duplicati.GUI.TrayIcon.exe
Sig[1].Name=Anwendungsversion
Sig[1].Value=2.1.0.4
Sig[2].Name=Anwendungszeitstempel
Sig[2].Value=66470000
Sig[3].Name=Fehlermodulname
Sig[3].Value=coreclr.dll
Sig[4].Name=Fehlermodulversion
Sig[4].Value=8.0.624.26715
Sig[5].Name=Fehlermodulzeitstempel
Sig[5].Value=66479681
Sig[6].Name=Ausnahmecode
Sig[6].Value=c00000fd
Sig[7].Name=Ausnahmeoffset
Sig[7].Value=0000000000071bd7
DynamicSig[1].Name=Betriebsystemversion
DynamicSig[1].Value=10.0.19045.2.0.0.256.48
DynamicSig[2].Name=Gebietsschema-ID
DynamicSig[2].Value=1031
DynamicSig[22].Name=Zusatzinformation 1
DynamicSig[22].Value=7207
DynamicSig[23].Name=Zusatzinformation 2
DynamicSig[23].Value=7207522fea375c011fae5e59a90d7703
DynamicSig[24].Name=Zusatzinformation 3
DynamicSig[24].Value=21f1
DynamicSig[25].Name=Zusatzinformation 4
DynamicSig[25].Value=21f10cfe9af57e605ed95d4f2e6b0e06
UI[2]=c:\Programme\duplicati 2\Duplicati.GUI.TrayIcon.exe
LoadedModule[0]=c:\Programme\duplicati 2\Duplicati.GUI.TrayIcon.exe
LoadedModule[1]=C:\WINDOWS\SYSTEM32\ntdll.dll
LoadedModule[2]=C:\WINDOWS\System32\KERNEL32.DLL
LoadedModule[3]=C:\WINDOWS\System32\KERNELBASE.dll
LoadedModule[4]=C:\WINDOWS\System32\USER32.dll
LoadedModule[5]=C:\WINDOWS\System32\win32u.dll
LoadedModule[6]=C:\WINDOWS\System32\GDI32.dll
LoadedModule[7]=C:\WINDOWS\System32\gdi32full.dll
LoadedModule[8]=C:\WINDOWS\System32\msvcp_win.dll
LoadedModule[9]=C:\WINDOWS\System32\ucrtbase.dll
LoadedModule[10]=C:\WINDOWS\System32\SHELL32.dll
LoadedModule[11]=C:\WINDOWS\System32\ADVAPI32.dll
LoadedModule[12]=C:\WINDOWS\System32\msvcrt.dll
LoadedModule[13]=C:\WINDOWS\System32\sechost.dll
LoadedModule[14]=C:\WINDOWS\System32\RPCRT4.dll
LoadedModule[15]=C:\WINDOWS\System32\bcrypt.dll
LoadedModule[16]=C:\WINDOWS\System32\IMM32.DLL
LoadedModule[17]=c:\Programme\duplicati 2\hostfxr.dll
LoadedModule[18]=c:\Programme\duplicati 2\hostpolicy.dll
LoadedModule[19]=c:\Programme\duplicati 2\coreclr.dll
LoadedModule[20]=C:\WINDOWS\System32\ole32.dll
LoadedModule[21]=C:\WINDOWS\System32\combase.dll
LoadedModule[22]=C:\WINDOWS\System32\OLEAUT32.dll
LoadedModule[23]=C:\WINDOWS\System32\bcryptPrimitives.dll
LoadedModule[24]=c:\Programme\duplicati 2\System.Private.CoreLib.dll
LoadedModule[25]=c:\Programme\duplicati 2\clrjit.dll
LoadedModule[26]=C:\WINDOWS\SYSTEM32\kernel.appcore.dll
LoadedModule[27]=c:\Programme\duplicati 2\Duplicati.GUI.TrayIcon.dll
LoadedModule[28]=c:\Programme\duplicati 2\System.Runtime.dll
LoadedModule[29]=c:\Programme\duplicati 2\Duplicati.Library.Crashlog.dll
LoadedModule[30]=c:\Programme\duplicati 2\Duplicati.GUI.TrayIcon.Implementation.dll
LoadedModule[31]=c:\Programme\duplicati 2\System.Collections.dll
LoadedModule[32]=c:\Programme\duplicati 2\Duplicati.Library.Interface.dll
LoadedModule[33]=c:\Programme\duplicati 2\Duplicati.Library.AutoUpdater.dll
LoadedModule[34]=c:\Programme\duplicati 2\Duplicati.Library.Utility.dll
LoadedModule[35]=c:\Programme\duplicati 2\Duplicati.Library.RestAPI.dll
LoadedModule[36]=c:\Programme\duplicati 2\System.Console.dll
LoadedModule[37]=c:\Programme\duplicati 2\System.Private.Uri.dll
LoadedModule[38]=c:\Programme\duplicati 2\Duplicati.Server.Implementation.dll
LoadedModule[39]=c:\Programme\duplicati 2\System.Security.Cryptography.dll
LoadedModule[40]=c:\Programme\duplicati 2\System.Linq.dll
LoadedModule[41]=C:\WINDOWS\SYSTEM32\windows.storage.dll
LoadedModule[42]=C:\WINDOWS\SYSTEM32\Wldp.dll
LoadedModule[43]=C:\WINDOWS\System32\SHCORE.dll
LoadedModule[44]=C:\WINDOWS\System32\shlwapi.dll
LoadedModule[45]=C:\WINDOWS\SYSTEM32\profapi.dll
LoadedModule[46]=C:\WINDOWS\SYSTEM32\icu.dll
LoadedModule[47]=c:\Programme\duplicati 2\System.Net.Requests.dll
LoadedModule[48]=c:\Programme\duplicati 2\System.Net.ServicePoint.dll
LoadedModule[49]=c:\Programme\duplicati 2\System.Net.Security.dll
LoadedModule[50]=c:\Programme\duplicati 2\System.Diagnostics.TraceSource.dll
LoadedModule[51]=c:\Programme\duplicati 2\System.Collections.Concurrent.dll
LoadedModule[52]=c:\Programme\duplicati 2\System.Net.Http.dll
LoadedModule[53]=c:\Programme\duplicati 2\System.Net.Primitives.dll
LoadedModule[54]=c:\Programme\duplicati 2\System.Text.Json.dll
LoadedModule[55]=c:\Programme\duplicati 2\Duplicati.WebserverCore.dll
LoadedModule[56]=c:\Programme\duplicati 2\Duplicati.Library.Common.dll
LoadedModule[57]=c:\Programme\duplicati 2\System.Threading.dll
LoadedModule[58]=c:\Programme\duplicati 2\System.Threading.Thread.dll
LoadedModule[59]=c:\Programme\duplicati 2\System.Diagnostics.Tracing.dll
LoadedModule[60]=c:\Programme\duplicati 2\System.Diagnostics.DiagnosticSource.dll
LoadedModule[61]=c:\Programme\duplicati 2\System.Text.RegularExpressions.dll
LoadedModule[62]=c:\Programme\duplicati 2\System.Memory.dll
LoadedModule[63]=c:\Programme\duplicati 2\System.Runtime.InteropServices.dll
LoadedModule[64]=c:\Programme\duplicati 2\Duplicati.Server.Serialization.dll
LoadedModule[65]=c:\Programme\duplicati 2\System.ComponentModel.dll
LoadedModule[66]=c:\Programme\duplicati 2\Microsoft.Extensions.DependencyInjection.Abstractions.dll
LoadedModule[67]=c:\Programme\duplicati 2\Duplicati.Library.Logging.dll
LoadedModule[68]=c:\Programme\duplicati 2\Duplicati.Library.Main.dll
LoadedModule[69]=c:\Programme\duplicati 2\System.Text.Encoding.Extensions.dll
LoadedModule[70]=c:\Programme\duplicati 2\System.Text.Encodings.Web.dll
LoadedModule[71]=c:\Programme\duplicati 2\System.Runtime.Intrinsics.dll
LoadedModule[72]=c:\Programme\duplicati 2\System.Numerics.Vectors.dll
LoadedModule[73]=c:\Programme\duplicati 2\System.Reflection.Emit.Lightweight.dll
LoadedModule[74]=c:\Programme\duplicati 2\System.Reflection.Primitives.dll
LoadedModule[75]=c:\Programme\duplicati 2\System.Reflection.Emit.ILGeneration.dll
LoadedModule[76]=c:\Programme\duplicati 2\Microsoft.Win32.Primitives.dll
LoadedModule[77]=C:\WINDOWS\SYSTEM32\iphlpapi.dll
LoadedModule[78]=C:\WINDOWS\SYSTEM32\DNSAPI.dll
LoadedModule[79]=C:\WINDOWS\System32\NSI.dll
LoadedModule[80]=C:\WINDOWS\SYSTEM32\dhcpcsvc6.DLL
LoadedModule[81]=C:\WINDOWS\SYSTEM32\dhcpcsvc.DLL
LoadedModule[82]=C:\WINDOWS\SYSTEM32\WINNSI.DLL
LoadedModule[83]=C:\WINDOWS\SYSTEM32\winhttp.dll
LoadedModule[84]=c:\Programme\duplicati 2\System.Net.Sockets.dll
LoadedModule[85]=C:\WINDOWS\System32\ws2_32.dll
LoadedModule[86]=C:\WINDOWS\system32\mswsock.dll
LoadedModule[87]=C:\WINDOWS\system32\wshunix.dll
LoadedModule[88]=c:\Programme\duplicati 2\System.Threading.Overlapped.dll
LoadedModule[89]=c:\Programme\duplicati 2\System.Net.NameResolution.dll
LoadedModule[90]=c:\Programme\duplicati 2\System.Threading.ThreadPool.dll
LoadedModule[91]=C:\WINDOWS\System32\winrnr.dll
LoadedModule[92]=C:\WINDOWS\System32\fwpuclnt.dll
LoadedModule[93]=C:\Windows\System32\rasadhlp.dll
LoadedModule[94]=C:\WINDOWS\system32\napinsp.dll
LoadedModule[95]=C:\WINDOWS\system32\wshbth.dll
LoadedModule[96]=C:\WINDOWS\SYSTEM32\DEVOBJ.dll
LoadedModule[97]=C:\WINDOWS\System32\cfgmgr32.dll
LoadedModule[98]=C:\WINDOWS\system32\pnrpnsp.dll
LoadedModule[99]=C:\WINDOWS\system32\NLAapi.dll
LoadedModule[100]=c:\Programme\duplicati 2\System.Net.Quic.dll
State[0].Key=Transport.DoneStage1
State[0].Value=1
OsInfo[0].Key=vermaj
OsInfo[0].Value=10
OsInfo[1].Key=vermin
OsInfo[1].Value=0
OsInfo[2].Key=verbld
OsInfo[2].Value=19045
OsInfo[3].Key=ubr
OsInfo[3].Value=5487
OsInfo[4].Key=versp
OsInfo[4].Value=0
OsInfo[5].Key=arch
OsInfo[5].Value=9
OsInfo[6].Key=lcid
OsInfo[6].Value=1031
OsInfo[7].Key=geoid
OsInfo[7].Value=94
OsInfo[8].Key=sku
OsInfo[8].Value=48
OsInfo[9].Key=domain
OsInfo[9].Value=0
OsInfo[10].Key=prodsuite
OsInfo[10].Value=256
OsInfo[11].Key=ntprodtype
OsInfo[11].Value=1
OsInfo[12].Key=platid
OsInfo[12].Value=10
OsInfo[13].Key=sr
OsInfo[13].Value=0
OsInfo[14].Key=tmsi
OsInfo[14].Value=223076995
OsInfo[15].Key=osinsty
OsInfo[15].Value=1
OsInfo[16].Key=iever
OsInfo[16].Value=11.3636.19041.0-11.0.1000
OsInfo[17].Key=portos
OsInfo[17].Value=0
OsInfo[18].Key=ram
OsInfo[18].Value=15773
OsInfo[19].Key=svolsz
OsInfo[19].Value=475
OsInfo[20].Key=wimbt
OsInfo[20].Value=0
OsInfo[21].Key=blddt
OsInfo[21].Value=191206
OsInfo[22].Key=bldtm
OsInfo[22].Value=1406
OsInfo[23].Key=bldbrch
OsInfo[23].Value=vb_release
OsInfo[24].Key=bldchk
OsInfo[24].Value=0
OsInfo[25].Key=wpvermaj
OsInfo[25].Value=0
OsInfo[26].Key=wpvermin
OsInfo[26].Value=0
OsInfo[27].Key=wpbuildmaj
OsInfo[27].Value=0
OsInfo[28].Key=wpbuildmin
OsInfo[28].Value=0
OsInfo[29].Key=osver
OsInfo[29].Value=10.0.19041.5487.amd64fre.vb_release.191206-1406
OsInfo[30].Key=buildflightid
OsInfo[30].Value=8542cc59-60cd-4480-912a-fa418fc6d2e7
OsInfo[31].Key=edition
OsInfo[31].Value=Professional
OsInfo[32].Key=ring
OsInfo[32].Value=Retail
OsInfo[33].Key=expid
OsInfo[33].Value=MD:283BAEF,ME:3038C64,FX:1335985C,ME:3038CEC,FX:133BD387,ME:3039059,FX:13460078,MD:30390AF
OsInfo[34].Key=fconid
OsInfo[35].Key=containerid
OsInfo[36].Key=containertype
OsInfo[37].Key=edu
OsInfo[37].Value=0
FriendlyEventName=Nicht mehr funktionsfähig
ConsentKey=APPCRASH
AppName=Duplicati.GUI.TrayIcon
AppPath=c:\Programme\duplicati 2\Duplicati.GUI.TrayIcon.exe
NsPartner=windows
NsGroup=windows8
ApplicationIdentity=82FD9B249B7C403DDC3AA25106395DB4
MetadataHash=101464839
<<END DATA

Hope this helps, for this is all I can contribute.

I also checked whether I could find a setting within the task scheduler, but: nothing. The only difference I can figure out is that the said type of crash occurs when I start Duplicati via the scheduler; and that it does - as far as I can see - not happen if I start it manually, i.e. via desktop icon or start menu (always as admin/with elevated rights); and that start with scheduler does not work at all if I define a path to start in (independent of the actual path). If I define a path in the task, nothing happens at all. The desktop icon seems to set the installation path as starting path by default; I didn’t change that.

I have found at least one possible cause for this.
The way the image displayed is loaded was not properly closing old images.
After some time, and on a machine with plenty memory, this could cause over 10000 images to be in an open state, and at that point Windows will refuse to open more.

I am not sure what causes the frequent image reloads, but I have fixed the issue by keeping the same images open instead of re-opening them. This fix is included in canary 2.1.0.112