安装Adobe reader,在vb->project->References下加载Adobe安装目录下ActiveX组件C:\Program Files\Adobe\Acrobat 7.0\ActiveX\acropdf.dll。Private Sub Command1_Click()
   ‘选择打印机
    Dim PrinterName As String
    PrinterName = SelectPrinter
    If PrinterName = "" Then
        Exit Sub
    End If
       
    Dim pdf1 As New AcroPDF
    pdf1.src = "d:\2.pdf"
    'pdf1.LoadFile "d:\2.pdf"
    pdf1.printAll
    'pdf1.printWithDialog
End Sub上述代码中pdf1的print方法都没有任何响应。why?谁知道pdf文件不用打开,直接发送到打印机打印改如何处理吗?多谢

解决方案 »

  1.   

    SelectPrinter是什么?另外,你单步调试一下
      

  2.   

    补充:
    selectprinter  是选择打印机得一个函数而已,返回所选择的打印机的名称,可以不用理会。调试运行到print代码出,没有任何问题,直接执行过去,但是没有任何效果。注意:acropdf.dll如果通过vb->project->Components加载,会出现一个可视化控件acroPDF,如果添加该控件到form上,程序自动创建其对象(而不是New一个),则printWithDialog方法可行,关键问题是我不能采用控件得方式,因为我不需要有form
      

  3.   

    敢问大哥,我通过VB的PRINTER对象输出到Adobe PDF时,会弹出另存为对话框,需要在文件名框中输入PDF文件名。我的问题是,怎样在VB程序中实现当另存为对话框弹出来的时候,文件名输入框默认的文件名是我程序中设定好的文件名。比如我用PRINTER打印窗体,第一次设定PDF名为1,然后第二次就变为2。如何用VB实现?