1
我正在嘗試爲網站設置一種打印服務,以便與(pdf,html,excel)進行通信併發送可打印的文檔。我決定去。通過Winspool打印
我創建了下面的簡單程序。在某些電腦上它可以工作(Windows 7)在其他電腦上(Windows 8),它不起作用(右)。當它不工作時,作業在打印隊列中可見不到一秒鐘,然後消失。該代碼不會輸出任何錯誤。我無法在Windows事件日誌中找到任何內容。
我也嘗試了一個RawPrinter的例子,我可以在網上找到C++,但是顯示了相同的行爲。
有誰知道我在做什麼錯? :(
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)
}
}