SeamlessRDP doesn't work at all on Windows 2012. You just get a "Hook DLL failed to initialize." when trying to start seamlessrdpshell.exe. I did a quick debug of it, and the problem is that vchannel_open() in hookdll.c fails. One possible reason for this is that you can't do multiple WTSVirtualChannelOpen() anymore. Normally we prevent this by having a reference counter in vchannel.c. Unfortunately it fails in this case because seamlessrdpshell.exe and seamlessrdp??.dll have their own copies of vchannel.c.
We need to remove a copy of vchannel and we do this from the exe file. First we need to do some refactoring, eg. moving shared implementation into it own library. There is also some unrelated function implementationt in libvchannel that should be moved into the shared library. Secondly, we need to remove the link with vchannel library from the exe file and import the vchannel functions from the dll to be used.
(In reply to comment #1) > First we need to do some refactoring, eg. moving shared implementation into it > own library. There is also some unrelated function implementationt in > libvchannel that should be moved into the shared library. > Upstream commits 1810, 1811 and 1812 include clean up of code and creation of a library with shared helper functions.
(In reply to comment #1) > Secondly, we need to remove the link with vchannel library from the exe file > and import the vchannel functions from the dll to be used. Done in upstream commit 1813. The above change has been tested on Window 2003 and works as expected. However on 2012 platform it seems to raise a few other issues, seems like the windows hook is not working as expected. Also the launch of the 32bit helper application failed / timed out.
(In reply to comment #3) > (In reply to comment #1) > > Secondly, we need to remove the link with vchannel library from the exe file > > and import the vchannel functions from the dll to be used. > > Done in upstream commit 1813. > Brought to ctc with vendordrop commit 29162.
(In reply to comment #3) > However on 2012 platform it seems to raise a few other issues, seems like the > windows hook is not working as expected. Also the launch of the 32bit helper > application failed / timed out. A new bug #5245 is created for the above issues.
Commits 29328, 29330 and 29331 adds notes in documentation about Windows Server 2012/2012 R2 is not supporting SeamlessRDP.
Documentation updates look good. Will verify that SeamlessRDP isn't broken on Windows 2008 R2 server before closing.
(In reply to comment #7) > Documentation updates look good. Will verify that SeamlessRDP isn't broken on > Windows 2008 R2 server before closing. SeamlessRDP still works on windows 2008 r2.