首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

vb OpenPrinter 调用老是返回0解决思路

2012-03-11 
vb OpenPrinter 调用老是返回0PrivateDeclareFunctionOpenPrinterLibwinspool.drv Alias_OpenPrinterA

vb OpenPrinter 调用老是返回0
Private   Declare   Function   OpenPrinter   Lib   "winspool.drv "   Alias   _
                    "OpenPrinterA "   (ByVal   pPrinterName   As   String,   phPrinter   As   _
                    Long,   pDefault   As   Any)   As   Long

    If   OpenPrinter(strPrnName,   hPrinter,   pd)   Then
    ....
    else

    end   if
    调用老是返回0,我的打印机是网络共享的。


    请求高人指点!

[解决办法]
API调用和参数有很大关系的,而你这里把参数全都略去了,我无法判断你那里有错。
[解决办法]
If OpenPrinter(strPrnName, hPrinter, pd) Then
....
OpenPrinter=1 '成功则返回1
else
OpenPrinter=0 '失败则返回1,如果不给函数赋值默认是0
end if

[解决办法]
搞错,我以为是自定义函数。那应该是调用出了问题啦 。查查你的参数,有没有问题,第二是你的网络有问题,无法调用打印机,所以返回0
[解决办法]
pd是in型参数,要么你把pd那里换成0,要么把pd里的各项数据通通赋上正确的值
[解决办法]
先用word打印一下,确保存你的机子能通过网络打印。如果没有问题就是你程序有问题了。
我猜测是strPrnName不正确。你用断点看一下,网络打印机是要有网络路径的。

热点排行