Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
尝试在远程桌面上运行应用程序时出现Python错误_Python_Python 2.7_Python 3.x_Ssh_Paramiko - Fatal编程技术网

尝试在远程桌面上运行应用程序时出现Python错误

尝试在远程桌面上运行应用程序时出现Python错误,python,python-2.7,python-3.x,ssh,paramiko,Python,Python 2.7,Python 3.x,Ssh,Paramiko,我正在尝试运行以下脚本,它将帮助我在远程windows桌面上打开SSH连接,并在该远程桌面上打开应用程序。我读取错误缓冲区时出错: import paramiko ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect('135.24.237.178',username = 'cyg_server',password = 'sandforce') stdin

我正在尝试运行以下脚本,它将帮助我在远程windows桌面上打开SSH连接,并在该远程桌面上打开应用程序。我读取错误缓冲区时出错:

import paramiko
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect('135.24.237.178',username = 'cyg_server',password = 'sandforce')

stdin,stdout,stderr = ssh.exec_command("C:\\Program Files\\Tensilica\\Xtensa    
OCD Daemon 9.0.3\\xt-ocd.exe")

stderr.readlines()
[u'bash: C:Program: command not found\n']

stdout.readlines()
[]
似乎我没有给出我想要在远程PC上正确运行的应用程序的路径。有人能帮忙吗


谢谢。

试着逃离空间,像这样:

ssh.exec_command("C:\\Program\ Files\\...

我猜您正在使用cygwin在windows上提供SSH服务器。如果是这样,您应该通过/cygdrive/c引用您的路径。尝试:

ssh.exec_command("/cygdrive/c/Program\ Files/Tensilica/Xtensa\ OCD\ Daemon\ 9.0.3/xt-ocd.exe")
实际上,您可能需要一个原始字符串,因为您需要将反斜杠传递给cygwin。。所以如果上述方法无效,请尝试


ssh.exec_命令(r“/cygdrive/c/Program\Files/Tensilica/Xtensa\OCD\Daemon\9.0.3/xt OCD.exe”)

我尝试了这个,但它无法工作:stdin,stdout,stderr=ssh.exec_命令(“c:\\Program\Files\\Tensilica\\Xtensa\OCD\Daemon\9.0.3\\xt OCD.exe”)stderr.readlines()[u'daebash:c:programmafiles-tensilicaocdmon9.0.3xt-OCD.exe:找不到命令]您现在缺少程序和文件之间的空间,对吗?您是对的,我正在使用cygwin在wondows上提供SSH服务器。还有,我试过了你的两个密码。他们工作到了一定程度。虽然xt-ocd.exe的应用程序窗口没有弹出,但在远程PC任务管理器->进程es中,每当我从PyScripter中点击您的ssh命令时,我都可以发现xt-ocd.exe在后台运行。因此,进程正在启动,但应用程序窗口未打开。这仍然是最后一件事。您可能需要允许您的sshd服务与桌面交互。我将尝试跟踪其中一台运行cygwin sshd的服务器,并为您提供更多信息。但是,一般来说,除非您明确允许服务与桌面交互,否则不允许服务与桌面交互。因此,如果您没有看到窗口打开,一点也不奇怪。我跟踪了其中一台运行它的计算机,并验证了如果我更改服务属性以允许它与桌面交互,它会为我打开应用程序窗口。(控制面板、管理工具、服务、CYGWIN ssd服务、登录选项卡、允许服务与桌面交互。重新启动服务)。我很接近这件事,再次感谢您。我按照您的步骤说,我正试图从我的电脑上用这个命令打开远程桌面上的realvnc:ssh.exec_command(“/cygdrive/c/Program\Files/realvnc/VNC4/vncviewer.exe”)……立即远程电脑中弹出一条消息:“交互式服务检测”并显示“程序可能需要您的信息或您的许可才能完成任务”…我单击“查看消息”,它会打开一个窗口,但显示不正确…它是一个蓝色屏幕,其中一个角落有交互式服务检测窗口,要求我“立即返回”“.你不是偶然进入远程机器的,是吗?因为如果您是,您所连接的桌面会话将不是服务试图显示其窗口的会话,该窗口可以解释正在发生的事情。