以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  判断扫描仪  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=145449)

--  作者:nxqtxwz
--  发布时间:2020/1/20 13:24:00
--  判断扫描仪
请问我想加个判断,就是如果有扫描仪就执行扫描代码,如果判断没有扫描仪就提示并退出,如何判断是否有扫描仪呢?
--  作者:有点蓝
--  发布时间:2020/1/20 13:50:00
--  
参考:http://foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=118836&replyID=802170&skin=1
--  作者:nxqtxwz
--  发布时间:2020/1/20 15:54:00
--  

老师好,这个太难了,改不了呀,请老师给帮忙改一下吧。谢谢!急着要用扫描仪,但水平太低搞不好。

 

建一个内部函数,名称CheckedPrinter,外部引用添加:System.Management.dll

Dim name As String = args(0)
Dim scope As new System.Management.ManagementScope("\\root\\cimv2")
scope.Connect()
Dim searcher As new System.Management.ManagementObjectSearcher("SELECT * FROM Win32_Printer")
Dim hasPrint As Boolean
For Each printer As System.Management.ManagementObject In searcher.Get()
    Dim printerName = printer("Name").ToString().ToLower()
    \'Output.Show(printerName)
    If printerName = name
        If printer("WorkOffline").ToString().ToLower() = "true"
            Return ("打印机【" & name & "】无法连接!")
        Else
            Return ("打印机正常!")
        End If
    End If
Next
Return "无此打印机"

调用
msgbox(Functions.Execute("CheckedPrinter","fax"))

--  作者:有点蓝
--  发布时间:2020/1/20 15:57:00
--  
添加引用:http://www.foxtable.com/webhelp/topics/1936.htm


--  作者:nxqtxwz
--  发布时间:2020/1/20 16:22:00
--  
以下是引用有点蓝在2020/1/20 15:57:00的发言:
添加引用:http://www.foxtable.com/webhelp/topics/1936.htm

老师,添加和调用函数我明白。这个例子是检测打印机的,如何检测扫描仪呢?


--  作者:有点蓝
--  发布时间:2020/1/20 16:31:00
--  
和打印机用法一样

msgbox(Functions.Execute("CheckedPrinter","这里改为扫描仪的名称,一样在系统控制面板设备和打印机里"))

--  作者:nxqtxwz
--  发布时间:2020/1/20 17:35:00
--  

msgbox(Functions.Execute("CheckedPrinter","这里改为扫描仪的名称,一样在系统控制面板设备和打印机里"))

 

改为扫描仪名称?我觉着扫描仪应该是通用的,不应该是特定的扫描仪。因为又不是在一台计算机上用。

正因为是想着通用的,所以不知代码怎么写。
TwainGui

[此贴子已经被作者于2020/1/20 17:37:40编辑过]

--  作者:有点蓝
--  发布时间:2020/1/20 17:37:00
--  
同一个设备安装后的名称应该都是固定的,到系统控制面板设备和打印机里看看。不同设备名称肯定不一样的,扫描仪也风型号的。不然一台电脑连接多台扫描仪要怎么区分呢
--  作者:nxqtxwz
--  发布时间:2020/1/20 17:50:00
--  

唉,放弃。弄不明白。


--  作者:有点蓝
--  发布时间:2020/1/20 20:20:00
--  
系统控制面板设备和打印机里显示什么内容?能不能看到连接的扫描仪?