1

我在 python 3.3 中使用这个代码和 pywin32 库来共享一个文件夹。我现在如何向文件夹添加权限?以下代码不对共享文件夹设置任何权限。我想将特定用户添加为读/写

import win32net
import win32netcon

shinfo={}

shinfo['netname']='python test'
shinfo['type']=win32netcon.STYPE_DISKTREE
shinfo['remark']='data files'
shinfo['permissions']=0
shinfo['max_uses']=-1
shinfo['current_uses']=0
shinfo['path']='C:\\sharedfolder'
shinfo['passwd']=''
server='192.168.1.100'

win32net.NetShareAdd(server,2,shinfo)
4

2 回答 2

3

你应该尝试使用win32security模块。这个网站展示了一个使用它来设置用户权限的例子

于 2013-03-10T10:37:49.607 回答
3

该模块的替代方案win32security是 wimp out 并使用该cacls程序,该程序更易于使用,例如参见http://support.microsoft.com/kb/162786/en-us :

from subprocess import *

proc = Popen("echo y|cacls filename /E /G BUILTIN\\Users:R", shell=True) 

proc.wait()

print "Child exited with",proc.returncode

echo y是因为这个愚蠢的程序会问“你确定吗?” 问题。在 Windows 7 上,不推荐使用 cacls(但仍然有效),请icacls改用(或xcalcs从资源工具包中)。

当然,为此创建子进程不会像调用 Win32 API 那样高效。

于 2013-03-10T11:54:26.930 回答