猿问

通过 Winspool 打印

我正在尝试为网站设置一种打印服务,以便与(pdf、html、excel)进行通信并将可打印文档发送到。我决定去。


我创建了下面的简单程序。在某些 PC 上(Windows 7)它可以在其他 PC(Windows 8)上工作(正确)。当它不起作用时,作业在打印队列中可见不到一秒钟,然后消失。该代码不会输出任何错误。我在 Windows 事件日志中找不到任何内容。


我还尝试了一个我可以在网上找到的 C++ 中的 RawPrinter 示例,但它显示了相同的行为。


有谁知道我做错了什么?:(


package main


import (

    "fmt"

    "code.google.com/p/brainman/printer"

)



func main() {

    defaultPrinterName, _ := printer.Default()

    fmt.Println(defaultPrinterName)

    p, err := printer.Open(defaultPrinterName)


    if err != nil {

        fmt.Println("Open failed: %v", err)

    }


    defer p.Close()


    err = p.StartDocument("my document", "RAW")


    if err != nil {

        fmt.Println("StartDocument failed: %v", err)

    }


    defer p.EndDocument()


    err = p.StartPage()


    if err != nil {

        fmt.Println("StartPage failed: %v", err)

    }


    str := "testing 123"

    mySlice := []byte(str)


    _, err = p.Write(mySlice)


    if err != nil {

        fmt.Println("Write failed: %v", err)

    }


    err = p.EndPage()


    if err != nil {

        fmt.Println("EndPage failed: %v", err)

    }

}



四季花海
浏览 253回答 1
1回答
随时随地看视频慕课网APP

相关分类

Go
我要回答