[求助]请问各位,怎样用LISP调出当前系统中的打印机名称
<p><font size="5">请问各位,怎样用LISP调出当前系统中的打印机名称,先谢了</font></p> <p><a href="http://fsxm.bokee.com/viewdiary.15931006.html">http://fsxm.bokee.com/viewdiary.15931006.html</a></p><p>;;;dos_getprn fsxm-getprn 这个函数思路源自:xshrimp<br/>(defun fsxm-getprn (/ strprint) ;Windows NT<br/> (setq strprint<br/> (vl-registry-read<br/> (strcat<br/> "HKEY_CURRENT_USER\\Software\\Microsoft\\"<br/> "Windows NT\\CurrentVersion\\Windows"<br/> )<br/> "Device"<br/> )<br/> )<br/> (substr strprint 1 (vl-string-search "," strprint))<br/>)</p> <p>如果系统中安装了多台打印机,是否能全部得到呢?</p><p>我运行是只得互默认的打印机名.</p> <p> </p>点击打开-秒杀打印机列表 源码 <p>兄弟!我发了一个fsxm-getprn 的网址<a href="http://fsxm.bokee.com/viewdiary.15931006.html">http://fsxm.bokee.com/viewdiary.15931006.html</a></p><p>得到系统全部打印机的函数就是在这fsxm-getprn 的下面</p><p>原来你没有进去看啊!哎!</p><p></p><p>取得系统默认打印机:</p><p>;;;dos_getprn fsxm-getprn 这个函数思路源自:xshrimp<br/>(defun fsxm-getprn (/ strprint) ;Windows NT<br/> (setq strprint<br/> (vl-registry-read<br/> (strcat<br/> "HKEY_CURRENT_USER\\Software\\Microsoft\\"<br/> "Windows NT\\CurrentVersion\\Windows"<br/> )<br/> "Device"<br/> )<br/> )<br/> (substr strprint 1 (vl-string-search "," strprint))<br/>)</p><p>取得系统全部打印机:</p><p>;;;dos_printers => fsxm-printers<br/>(defun fsxm-printers (/ return wshnetwork printlst i)<br/> (vl-catch-all-apply<br/> '(lambda ()<br/> (setq WshNetwork (vlax-create-object "wscript.Network"))<br/> (setq return (vlax-invoke WshNetwork 'EnumPrinterConnections))<br/> (setq i 1)<br/> (vlax-release-object WshNetwork)<br/> (repeat (/ (vlax-get return 'length) 2)<br/> (setq printlst (cons (vla-item return i) printlst))<br/> (setq i (+ 2 i))<br/> )<br/> )<br/> )<br/> printlst<br/>)</p><p>设置系统默认打印机:</p><p>;;;dos_setprn => fsxm-setprn<br/>(defun fsxm-setprn (printername / wshnetwork)<br/> (if (null<br/> (vl-catch-all-apply<br/> '(lambda ()<br/> (setq WshNetwork (vlax-create-object "wscript.Network"))<br/> (vlax-invoke WshNetwork 'SetDefaultPrinter printername)<br/> )<br/> )<br/> )<br/> t<br/> )<br/>)</p> 路过,用用,谢谢 刚好要用到,顶下,
页:
[1]