[已解决]清理远程计算机管理里面的会话数。
本帖最后由 xyhqqaa 于 2012-1-30 02:10 编辑公司由于公用电脑连接打印机。但是每次都有连接数限制。有时候打印连接数量因为个别原因,导致打印机无法正常接收任务打印。现在的想法是连接远程打印机的计算机管理界面然后清除会话任务。但是现在却不知道如何调用- -。然后自动关闭打印机任务,然后启动再清除会话任务数。新手求帮助#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
Local $sUserName = "ADMINISTRATOR"
Local $sPassword = "密码"
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 623, 449, 192, 114)
$Input = GUICtrlCreateInput("", 40, 40, 201, 28)
GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif")
$Button1 = GUICtrlCreateButton("Button1", 256, 40, 105, 33)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
RunAs($sUserName,"", $sPassword, 0, "mmc.exe compmgmt.msc /computer="&GUICtrlRead($input))
EndSwitch
WEnd;清理打印任务
RunWait(@ComSpec & " /c net stop spooler", "", @SW_HIDE)
FileDelete(@SystemDir & "\spool\PRINTERS\*.*")
RunWait(@ComSpec & ' /c sc config spooler start= "AUTO"', '', @SW_HIDE)
RunWait(@ComSpec & ' /c net start spooler', '', @SW_HIDE)
不用这么复杂 要清除会活 用 net sessoin /delete /y 即可 回复 2# xzxnovice
大哥,谢谢,之前倒是没注意到这方法。刚搜索了下,确实可行。但是,我的想法是远程清除会话任务。。- -。。。。虽然有点钻牛角尖。。但是希望有人知道方法的可以说下,教下小弟 本帖最后由 xzxnovice 于 2011-10-19 17:48 编辑
远程的话要花点功夫了,
可以考虑用 net use、 at 命令,前提要有管理员密码,相关服务已开启
补充: 连接数限制后,不知是否可行。 建议参考pstools中的psservice 服务器版操作系统不是没有连接数限制吗,干嘛还要清除会话数啊?
而且“自动关闭打印机任务”时,如果有正常用户有打印任务在里面,不是没法使用了吗 回复 5# 502762378
谢谢。之前不知道这东东,一看,。。。好强大。。。。谢谢。我好好研究下。。。。感谢您的帮助 回复 6# qqgghh1
恩恩。是有点考虑不周全。但是俺这边只是普通的XP电脑,有会话数限制 回复 4# xzxnovice
恩恩。。谢谢。。使用这点倒是没考虑周全。谢谢 不建议远程监控,建议在安装打印机的电脑上开启监控,直接有效。
_Net_Share_SessionEnum ;_Net_Share_SessionDel
参考这两个函数。
页:
[1]