Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

For reference, I run a Synergy 1.4.2 server on Windows 7 x64 with one CentOS 5.5 Linux client. Most mouse and keyboard functions work exactly as expected. The following is an exception.

Copy & paste from server -> client fails under certain conditions. All text copies done on the Linux client seem to work (I can paste text into Windows). The reverse is not quite true. When running Synergy as a user with Admin privileges, text copies on the Windows 7 x64 server appear to work from all programs (I can successfully paste the copied text on either machine). When running Synergy as a service (started from services.msc), text copies on the Windows 7 x64 server appear to work from all program except Firefox. Specifically, in service mode, when I highlight text in Firefox and do any of (a) Edit -> Copy, (b) right-click -> Copy, or (c) Control-C, I CAN paste the text into any other program on the Windows 7 server but cannot paste this text onto the Linux client. This only occurs with Firefox.

As a workaround (still in service mode), I often open a text document in Notepad. I copy text from Firefox and successfully paste it into Notepad. I can then copy the text from Notepad and successfully paste it on the Linux client. Again, other programs besides Firefox do not exhibit this behavior (I.e., I can copy/paste from Google Chrome without issue). And again, this issue only occurs when the Windows 7 x64 Synergy server is started in service mode.

Has anyone else experienced this same phenomenon? Any and all comments or suggestions are welcome.

share|improve this question
I have exactly the same problem, it will not copy from Visual Studio 2008 and several other programs. Copy from Linux to Win always works. I think it may have to do with the type of object that is being put in the clipboard. I have not seen a bug reported against this yet, and have not found a workaround. – WolfmanJM Apr 8 '11 at 17:15
FYI for anyone watching this is now an issue... – WolfmanJM Apr 23 '11 at 5:27
up vote 0 down vote accepted

I have also experienced this problem just recently with a new Windows 7 machine. In my case the Linux machine is the server and Windows 7 (and XP) are clients. I can copy and paste between XP and Linux in either direction without problems, and copying from Linux to paste into Windows 7 also works. But I am unable to copy from Windows 7. I did have a look at the debug messages but nothing stood out, other than seeing no clipboard messages at all when moving out of the Windows 7 screen.

To me it seems that the Synergy service is unable to read the clipboard, probably as part of Windows 7's updated security model.

I think I can confidently say this is a bug in Synergy, but hopefully it's one that's easy to fix! (I guess I will have a go myself if it gets annoying enough...)

share|improve this answer
This is an interesting hypothesis. I am running synergy as a service though so I presume it is running fully privileged? It can login at the login screen. – WolfmanJM Apr 21 '11 at 5:35
@WolfmanJM: I am also able to log in at the login screen, but I cannot get Alt+Ctrl+Del to work, I have to press that on the local keyboard. I also would have assumed it would be fully privileged as a service, but there may be a new way to tell Windows you want to access the user's clipboard which Synergy does not yet do. – Malvineous Apr 21 '11 at 6:52
It would certainly be great to fix this. Usually I can copy then paste to a notepad instance then copy from that but recently I noticed that sometimes even copying from notepad doesn't transfer to Linux. – WolfmanJM Apr 21 '11 at 18:20
Now that it's been accepted as a bug in Synergy (see above), an in-program solution will hopefully emerge in some future release. – sivs422 Jun 8 '11 at 1:39
I should update this to say that copying from Windows 7 to another machine does work, it's just that only plain text can be copied. Surprisingly most things that seem like plain text aren't any more, but I can still copy and paste out of the Win7 box if I paste it into Notepad first and then re-copy it. So it looks like the problem isn't with accessing the Win7 clipboard but rather Synergy not supporting some newer clipboard formats. But as sivs422 says, hopefully this will be fixed soon enough. – Malvineous Oct 7 '11 at 3:15

I seem to have the same problem and I found it annoying enough to spend time to debug and fix it (for me).

The symptom is that seemingly all non-plain-text entries in the clipboard are ignored. This can be nicely verified by opening MS Word and the clipboard view, since entries there have little icons identifying the format of the entry.

According to the code that should not be a problem since each entry has several formats and always plain text UTF-16 encoded, which is what Synergy expects.

Unfortunately Synergy tries to enumerate all available entry formats via EnumClipboardFormats, which should also be no problem, but somehow it is. I wrote a simple test program and there was no problem with that approach. In Synergy EnumClipboardFormats returns only the first format which is CF_UNICODETEXT for plain text and something completely different for everything else. Instead of returning the other formats, as my test program, in Synergy the next call to EnumClipboardFormats returns error 183 (ERROR_ALREADY_EXISTS) which makes no sense and is not documented.

Replacing CMSWindosClipboard::get with the method below did fix the problem for me.

CMSWindowsClipboard::get(EFormat format) const
IMSWindowsClipboardConverter* converter = NULL;
for (ConverterList::const_iterator index = m_converters.begin();
                        index != m_converters.end(); ++index) {
    converter = *index;
    if (converter->getFormat() == format) {
        HANDLE win32Data = GetClipboardData(converter->getWin32Format());
        if (win32Data != NULL) 
            return converter->toIClipboard(win32Data);

return CString();
share|improve this answer

This works for me:

Client Windows 7

Server Linux

Solution: Disable Elevate on Windows 7 Client

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .