我正在尝试创建一个程序,自动在桌面上安装网络快捷方式并下载驱动程序(这是我工作的打印服务器),但为了在安装后访问快捷方式,我需要在打印机网络的域下输入我的工作凭据。我尝试使用Python的keyring库,但没有成功,我还尝试使用win32wnet.WNETADDCONNECTION2()我在几个论坛上看到过,但对我来说也不成功。在
这是当前的代码
import os, winshell, keyring, win32wnet
from win32com.client import Dispatch
#Add Windows Credentials
#**************************
url = r'\\LINKTOTHENETWORK'
win32wnet.WNetAddConnection2(0, None, url, None, USERNAME, PASSWORD)
keyring.set_password(url, USERNAME, PASSWORD)
keyring.get_password(url, USERNAME)
#**************************
# This is where I am having troubles.
# Create the shortcut
desktop = winshell.desktop()
path = os.path.join(desktop, "MYLINK.lnk")
target = url
# Set path and save
shell = Dispatch('WScript.Shell')
shortcut = shell.CreateShortCut(path)
shortcut.Targetpath = target
shortcut.save()
# Open the shortcut
os.startfile(target)
在我的完整程序中,我有一个使用Kivy的界面,它要求输入我的用户名和密码,然后我点击一个“安装”按钮,它将域添加到我的用户名(domain\Username)。使用keyring时,它被正确地显示出来了,只是在错误的区域,所以不应该是一个问题,我只是找不到一个方法来添加Windows凭据而不是常规凭据。在
我正在Windows10计算机上使用python2.7。在
如果有人知道我可以使用的库或其他方法,那就太好了。谢谢!在
我很确定您可以通过创建一个.bat文件并在程序中执行来实现这一点。在
例如
我还没有为您的特定用例做这件事,但它对init非常有效。例如,使用windows mstsc的rdp会话。在
相关问题 更多 >
编程相关推荐