读书人

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

发布时间: 2012-03-11 18:15:38 作者: rapoo

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不正确。你用断点看一下,网络打印机是要有网络路径的。

读书人网 >VB

热点推荐