How to prevent Ditto clipboard manager from saving text copied in KeepPassXC?

3

I'm using Ditto to extend the native Windows' clipboard. I would like it to not save the text I copy in KeePassXC.

I've already found this question and tried adding KeePassXC.exe (as listed in the Windows' task manager) to the list of excluded processes, but it won't work. Here's how I tried to set it up:

enter image description here

enter image description here

Oddly enough, if I try to add chrome.exe to the list of excluded processes, it will work as expected. Any solution?

brainplot

Posted 2018-06-30T08:22:23.790

Reputation: 33

What is in the advanced button in your first image? – Moab – 2018-06-30T12:01:00.657

@Moab it's nothing related to the excluded processes. It just shows some more advanced settings relative to Ditto itself, such as notifications and startup behaviour. – brainplot – 2018-06-30T13:10:47.770

Answers

1

Update: The Ditto developers fixed this in Ditto Beta version 3.21.248! You can download it at https://ditto-cp.sourceforge.io/beta/

For more info see https://sourceforge.net/p/ditto-cp/discussion/287511/thread/6c5ae56a/#a80b


Original answer:

I have found the reason why Ditto is not properly excluding KeePassXC text, but unfortunately I have not found how to fix it yet:

Ditto is not able see the KeePassXC application.

Since it can't see the KeePassXC application when it is open, Ditto doesn't know to ignore text copied from within it even if it is in the exclude list.

I figured this out by enabling Ditto's log. I excluded all KeePassXC processes I saw in task manager, as well as notepad to test both and see what happens when I try to copy text from within both applications. (Ditto options screenshot)

(To enable logging, open Ditto, then ctrl + F5 to start/stop log. Log file can be found in C:\Users\ user name \AppData\Roaming\Ditto)

When I tried to copy text from within notepad, the log below shows what is supposed to happen when text is copied from an application that has been added to the Ditto exclude list. Notice that Ditto recognized notepad as the active app (highlighted in this screenshot).

[2018/8/4 01:30:03.533 - ClipboardViewer.cpp 241] OnClipboardChange - Start
[2018/8/4 01:30:03.540 - ClipboardViewer.cpp 320] INCLUDE app names: *, Active App: notepad.exe
[2018/8/4 01:30:03.547 - ClipboardViewer.cpp 333] Inlclude app names Found Match * - notepad.exe
[2018/8/4 01:30:03.554 - ClipboardViewer.cpp 347] EXCLUDE app names keepassxc.exe;keepassxc-proxy.exe;keepassxc-cli.exe;keepass.exe;*.kdbx;notepad.exe;, Active App: notepad.exe
[2018/8/4 01:30:03.559 - ClipboardViewer.cpp 357] Exclude app names Found Match notepad.exe - notepad.exe - NOT SAVING COPY
[2018/8/4 01:30:03.566 - ClipboardViewer.cpp 243] OnClipboardChange - End

However, the log below shows what happens when I copy text from within KeePassXC. Notice that the "Active app" is blank (highlighted in this screenshot). If Ditto can not see KeePassXC, then it can not know that it should ignore the text copied from within the program.

[2018/8/4 01:29:44.999 - ClipboardViewer.cpp 241] OnClipboardChange - Start
[2018/8/4 01:29:45.007 - ClipboardViewer.cpp 320] INCLUDE app names: *, Active App: 
[2018/8/4 01:29:45.013 - ClipboardViewer.cpp 333] Inlclude app names Found Match * - 
[2018/8/4 01:29:45.018 - ClipboardViewer.cpp 347] EXCLUDE app names keepassxc.exe;keepassxc-proxy.exe;keepassxc-cli.exe;keepass.exe;*.kdbx;notepad.exe;, Active App: 
[2018/8/4 01:29:45.021 - ClipboardViewer.cpp 266] OnDrawClipboard:: *** SetTimer *** 455056375
[2018/8/4 01:29:45.024 - ClipboardViewer.cpp 243] OnClipboardChange - End
[2018/8/4 01:29:45.135 - ClipboardViewer.cpp 392] OnDrawClipboard::OnTimer 455056500
[2018/8/4 01:29:45.141 - CopyThread.cpp 56] OnClipboardChange - Start
[2018/8/4 01:29:45.147 - CopyThread.cpp 109] LoadFromClipboard - Before
[2018/8/4 01:29:45.157 - Clip.cpp 435] Tried to set description from cf_unicode text, Set: 1, Desc: [keepassxc test]

I am not an expert on KeePassXC or Ditto, so I'm not sure if this a problem with Ditto or with KeePassXC. I wonder if this bug may actually be some sort of security "feature" of KeePassXC - maybe it tries to hide itself from other programs?

If we can get Ditto to see KeePassXC as an active app, then it should work properly. Unfortunately I haven't figured out how to do that yet.

I know this is only a half answer, sorry. I have identified why Ditto isn't properly excluding KeePassXC, but I have no idea how to fix it. I am having the same problem as you, so I hope this info helps someone else smarter than me to come up with a fix.

qcksilver

Posted 2018-06-30T08:22:23.790

Reputation: 26

I don't think it's a KeePassXC's feature nor a bug. After playing around with Ditto and KeePassXC for a bit I found out that this issues is present with any app using Qt as GUI library. I tried adding Wireshark to the list of excluded applications in Ditto and it behaves exactly the same as with KeePassXC; I also tried the same thing with QBitTorrent and, again, same behaviour. All these three apps have the Qt framework in common. I'm not sure if my deduction is correct but it's the most evident thing to me about these three apps. I have no idea on which end this issue should be solved. – brainplot – 2018-08-04T14:45:53.040

Interesting! I think you are right. btw, I started a thread in the Ditto help forum: https://sourceforge.net/p/ditto-cp/discussion/287511/thread/6c5ae56a/ hopefully someone there will be able to help us out.

– qcksilver – 2018-08-04T22:13:27.390

Thank you. I'm not subscribed to SourceForge and I never actually get to use it so I didn't want to create an account just for the purpose of adding a thread in the forum. I'm really thankful to you for doing that. I stopped using Ditto because of this problem but I may definitely consider giving it another chance if they solve this issue. – brainplot – 2018-08-04T22:31:07.993

No problem! I had to stop using Ditto because of this too, which is a shame cause it's a really useful program. Hopefully someone will figure out how to solve this. – qcksilver – 2018-08-04T23:51:34.753

Because of our research they were able to fix the problem!
See https://sourceforge.net/p/ditto-cp/discussion/287511/thread/6c5ae56a/#a80b

I've updated my answer to include this info. If you could mark my answer as the solution, I would appreciate it. Thanks!

– qcksilver – 2018-08-05T21:59:46.807

Just did that. I'm glad they found a solution, that was quicker than I expected! Thank you, I can finally use Ditto again. – brainplot – 2018-08-05T22:04:37.470