# 请教VB高手,如何写出 [将多个档案拖至印表机列印] 的效果?

Posted by ctci on October 25, 1999 at 13:46:11:

站上有一篇,列印任何档案的方法,可是一次只能印一个档(将档案印成另一
种档案),若依序列印多个档案,则并不会依序列印,而是几乎同时.
但我们若是同时选取多个不同类型的档,它却可以印完一个再印另一个
请问有什解决方法??

谢谢!

+----------------+
|以下为原程式范例|
+----------------+
Declare Function ShellExecuteAny Lib "shell32.dll" Alias "ShellExecuteA" _
(ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _
ByVal lpParameters As Any, ByVal lpDirectory As Any, ByVal nShowCmd As Long) As Long

Const SW_SHOWMINNOACTIVE = 7

Sub PrintAnyFile(FileToPrint As String)
Dim Ret As Long
Ret = ShellExecuteAny(Me.hwnd, "print", FileToPrint, ByVal 0&, ByVal 0&, SW_SHOWMINNOACTIVE)
End Sub
'实际使用案例如下：
Private Sub Command1_Click()
PrintAnyFile Text1.Text
End Sub
其实上面这种列印档案的方式，它的作用方式，和我们直接将文件档案拖拉到印表机的图示上去列印档案是一样的道理！ (如果您之前尚不知道这个功能的话，您现在可以试试看将一份文件直接拖拉放到印表机的图示上，看看结果如何！)

Follow Ups: