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モジュールに代わる方法は、caclsプログラムを使用することです。これは、使用するのがより簡単です

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 に答える