我想让websockify 0.6.0在windows上运行,但没有任何运气,
我尝试过python websockify.py 1501 10.0.0.141:1501,但这并不好,会出现错误,比如:
Traceback (most recent call last): File "websockify.py", line 1, in <module> run NameError: name 'run' is not defined
我也尝试过将Websockify编译为Windows可执行表,但这也不起作用--我使用了以下命令run.exe 1501 10.0.0.141:1501,它在开始时看起来很有希望,将以下内容输出到控制台:
WARNING: no 'resource' module, daemonizing is disabled WebSocket server settings: - Listen on :1501 - Flash security policy server - No SSL/TLS support (no cert file) - proxying from :1501 to 10.0.0.141:1501
但是,在尝试使用以下浏览器连接之后,ws://localhost:1501
**它输出以下错误
Traceback (most recent call last): File "run", line 5, in <module> File "websockify\websocketproxy.pyc", line 419, in websockify_init File "websockify\websocket.pyc", line 1018, in start_server UnboundLocalError: local variable 'exc' referenced before assignment
是否知道如何在windows上使用websockify /或如何将已编译的websockify用作windows可执行文件?
发布于 2014-09-27 00:45:51
让websockify在Windows上工作的最简单方法是使用websockify的Node.js版本(在另一个/js目录中)。它完全出格,没有恶作剧的必要。
发布于 2014-09-17 22:32:33
要解决这个问题,请为您的示例源使用以下修改的命令,从每个步骤的开始开始,看看是否有用:
from setuptools import setup, find_packages
# add (line 2):
import py2exe
setup(name=name,
# add (line 10):
console=['run'],- **In your local code, import the** [**resources**](https://docs.python.org/2/library/resource.html) **module to allow you to monitor, measure and control system resources utilized by your program**
import resource[Your path to Portable Python install]\App\python.exe setup.py py2exe --includes numpyrun.exe 5901 localhost:5900如果适合的话,还有一个指南这里可以将websockify作为Windows运行(同样在您的源代码中提到)。
打开两个似乎会给您带来问题的文件(websockify\websocketproxy.pyc和websockify\websocket.pyc ),并确保对名为"exc“的变量的任何引用都是在之后引用的(如果尚未修改这些文件,则很有可能出现问题)。
我相信您的代码依赖于对系统资源(如端口等)的更改和监视,并且您不允许您的代码拥有这些权限,因此它需要资源模块。如果要从程序(我称之为本地代码)调用run.exe,则需要在顶部导入资源。如果您只是直接从命令行调用run.exe程序,那么尝试制作这个新程序,看看这是否有帮助。如果没有,请发送您的websockify文件夹和run.exe的内容,我将查看。
# Program Name: goAndRun.py
# Code:
import sys, string, os, arcgisscripting, resource
os.chdir( 'C:\\[Path_to_the_dir_containing_run.exe]' )
os.system( '"C:\\[Path_to_the_dir_containing_run.exe]\run.exe, 5901 localhost:5900"' )然后使用以下命令:
python goAndRun.py由于不在您的环境中,我无法判断这是否会像我所写的那样执行。最后一行也可能是:
os.system( '"C:\\[Path_to_the_dir_containing_run.exe]\run.exe"', '5901 localhost:5900' )https://stackoverflow.com/questions/25711953
复制相似问题