Sometimes it is necessary to do coding work through Remote Desktop Connection, such as the general web, such as the need for the GPU and other support coding work directly with Windows Remote Desktop Connection coding and then debug, and some need to rely on graphics support work such as rendering, When GPU operations such as CUDA, Remote Desktop Connection debug will fail. Because when using Remote Desktop to connect computer B, such as the original computer B has a cow X graphics card, driving what kind of no problem, but at this time with another computer A remote connection to the past, on the B run need GPU support programs, such as the need to use opengl3.x function or CUDA, while B detected a remote connection, it will not give the corresponding support or no corresponding driver can make remote connection over can also support. Ah .... Dizzy. This means that you may only drive opengl1.x at this time, the program will crash off. Let's use an example below.
For example, when I have a piece of code on Computer B, I detect GPU support for CUDA.
At this point I went directly through computer A through windows with the Remote Desktop Connection tool to practice, run.
The result is that there is no cuda support, and in fact, I can run it directly through local execution. The question now is how to run the program on Computer B as well as the computer B at the location of Computer B.
Start to imagine the remote control through QQ can be solved? Because the feeling of QQ remote control seems to be the transmission of pictures, and then computer A to Computer B transmission over the picture to do the corresponding mouse and other operations mapped to Computer B. So there are the following solutions: Computer A, B each landing 1 qq,qq A and QQ B, and then Remote Desktop Connection in the past, through the computer B QQ with the application of QQ A Remote Assistance. Then disconnect, QQ A to accept the application, and then you can use QQ Remote Desktop control computer B, and then run the program. Results...... The result is that it doesn't solve the problem. Experiments show that, without remote connection, and directly to the person on Computer B operation, to apply for computer A side of the Remote Assistance, this is possible. But not every time you have to let other people on computer B to help apply for Remote Assistance bar.
Finally, with the help of @ great Xin to be resolved.
Method:
1, Computer A with Windows with Remote Desktop Connection to computer B, computer B on the landing QQ B, Computer A This side has landed QQ a.
2, on the computer B through QQ B to apply for Remote Assistance QQ A.
3, Computer A on QQ A to accept the invitation.
The connection is already established at this time. and also through QQ Remote Assistance to control computer B.
4, the key, in Windows from the Remote Desktop Connection tool by running the following script on Computer B. If not, copy a past.
Note that you can run as an administrator. After running, the session that is remotely connected through Windows is disconnected. Now only through QQ Remote Assistance to operate computer B.
5, here is the moment to witness the miracle.
The video card on Computer B can now be detected to support CUDA.
The above demo is to get the graphics card for Cuda support Drive, the corresponding OpenGL is the same. In fact, the operation is now the same as in the local actual operation of Computer B.
Principle:
Personally, the script in the above key steps, which is a looping test, can actually get an accurate conversation on Computer B via the command line query session, and then run that command to get an accurate sessions switch, there's an application Tscon, Its corresponding grammatical usage can refer to here. In fact, QQ Remote Assistance is also used in the windows of the RDP protocol at the bottom. From computer A through the Remote desktop via QQ B to apply for QQ a remote Assistance, at this time is controlled computer B has two sessions, that is, a QQ Remote assistance of another Windows Remote Desktop. At this point run Tscon is the session to switch to the QQ desktop session. And this session is being charged with that computer. So the GPU OpenGL what drives and so on is assumed to be local execution. And that's how it works.
This is also a personal speculation, in fact, what the principle is not clear. It's good to solve this problem. Also want to understand the children's shoes to give explanations. In addition, some students pointed out that some team-assisted software can also support, did not try to understand.