【已解决】打印机改名问题求助 - 答案在5楼
本帖最后由 touch_xu 于 2012-4-28 18:46 编辑看到论坛许多关于打印操作的方法及UDF, 好像没有看到关于打印机改名,求解中,比如如何将上图中打印名称改为Printer呢,谢谢!
附上网上找到的VBS版
如果不是网络打印机的话,自己可以试试注册表 这个可以试试,应该有现成的函数吧,期待 注册表里可以实现好像。。。
_renameprinter("123","456")
Func _renameprinter($old,$new)
$strComputer = "localhost"
$objWMIService = ObjGet("winmgmts:\\" & $strComputer & "\root\CIMV2")
$colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_Printer", "WQL")
For $objItem In $colItems
If $objItem.Name = $old Then
$objItem.renameprinter($new)
EndIf
Next
EndFunc
502762378 发表于 2012-4-26 10:48 http://www.autoitx.com/images/common/back.gif
总是有高人出现,太感谢了,测试发现对大小写不敏感,因我就必须要区分这个,比如我想将printer改为Printer就怎么都改不成功,看不懂WMI,请大家继续帮忙,十分感谢! 回复 6# touch_xu
试一试用:
Chr(80) & Chr(114) & Chr(105) & Chr(110) & Chr(116) & Chr(101) & Chr(114)
代替 $new 变量!
以上字符串 == Printer 回复touch_xu
试一试用:
Chr(80) & Chr(114) & Chr(105) & Chr(110) & Chr(116) & Chr(101) & Chr( ...
user3000 发表于 2012-4-26 20:04 http://www.autoitx.com/images/common/back.gif
谢谢帮忙,不过这样也不行,也没有反应;
只有中转一下,有一种方法是先改为其它名(如temp),然后再改为Printer,应该有比较好的方法。
页:
[1]