相关疑难解决方法(0)

从Python脚本中请求UAC提升?

我希望我的Python脚本能够在Vista上复制文件.当我从普通cmd.exe窗口运行它时,不会生成错误,但不会复制文件.如果我运行cmd.exe"作为管理员",然后运行我的脚本,它工作正常.

这是有道理的,因为用户帐户控制(UAC)通常会阻止许多文件系统操作.

有没有办法可以在Python脚本中调用UAC提升请求(这些对话框说"像这样的应用程序需要管理员访问权限,这样可以吗?")

如果那是不可能的,那么我的脚本是否有一种方法可以至少检测到它没有被提升以便它可以优雅地失败?

python windows uac windows-vista

82
推荐指数
6
解决办法
8万
查看次数

Django/WSGI应用程序中的持久数据库连接

我希望在django支持的Web应用程序中保持对第三方遗留数据库的持久连接.

用户 -  INET  -  Web服务器 - 持久DB连接

我想保持Web应用程序和旧数据库之间的连接打开,因为为这个特殊的数据库创建新连接非常慢.

它不像通常的连接池,因为我需要存储每个Web用户的连接.用户"Foo"需要在Web服务器和旧版DB之间建立自己的连接.

到目前为止,我使用Apache和wsgi,但如果其他解决方案更合适,我可以改变.

到目前为止我使用django.在这里我也可以改变.但是痛苦会更大,因为已经有很多代码需要再次集成.

到目前为止,我使用Python.我想Node.js在这里会更合适,但改变的痛苦太高了.

当然需要某种超时.如果N分钟没有来自用户"Foo"的http请求,那么持久连接将需要关闭.

怎么能解决这个问题?

更新

我叫它,DB但它不是通过settings.DATABASES配置的数据库.这是一个奇怪的,传统的,不是广泛的类似DB的系统,我需要集成.

如果我现在有50个人在线使用网络应用程序,那么我需要有50个持久连接.每个用户一个.

用于连接到DB的代码

我可以在每个请求中执行此行:

strangedb_connection = strangedb.connect(request.user.username)
Run Code Online (Sandbox Code Playgroud)

但是这个操作很慢.使用连接很快.

当然strangedb_connection不能序列化,也不能存储在会话中:-)

python django database-connection

23
推荐指数
1
解决办法
2955
查看次数

python中2个程序之间的通信

我有两个程序都是python,一个是第三方,已经制作.我想在前台运行一个,在后台运行一个.我想在两个程序之间建立一个通信,所以我可以告诉前台的那个程序做某事,然后告诉其他程序做某事.比如在前台程序上我按下一个按钮,然后告诉其他程序做某事.回答这个问题的最佳方法是什么?

我知道我之前已经问过这个问题,但是我觉得人们可能发现这个问题太具体了,所以我写了一个更简化的问题.

python sockets inter-process-communicat

7
推荐指数
1
解决办法
1万
查看次数

用于发送字符串数据的简单 rpyc 客户端和服务器

我正在使用 rpyc 在 python 中编写一个程序。我的目标是创建一个简单的服务器,它接受来自客户端的数据字节(字符串)。我对 python 和 rpyc 都很陌生。这是我的 server.py 代码:

from rpyc.utils.server import ThreadedServer # or ForkingServer

class MyService(rpyc.Service):
    # My service
    pass

if __name__ == "__main__":
    server = ThreadedServer(MyService, port = 18812)
    server.start()
Run Code Online (Sandbox Code Playgroud)

然后是我的 client.py 代码:

from rpyc.core.stream import SocketStream
from rpyc.core.channel import Channel

b = SocketStream.connect("localhost", 18812)
c = Channel(b, compress=True)
c.send("abc")

b.close()
c.close()
Run Code Online (Sandbox Code Playgroud)

然而,当运行我的 client.py 时,控制台中出现错误。如果我理解正确,我必须在 server.py 中创建一个与客户端关联的流。是这样吗?我怎样才能做到这一点?

python client rpyc server

3
推荐指数
1
解决办法
6518
查看次数