2012-04-02 59 views
-1

我正在做一些Office自動化,當使用VB.NET Office參考DLL打印一個.doc文件時,它會導致很大的CPU負載,所以我想限制這些進程只使用一個虛擬內核。辦公自動化和流程親和

我一直無法在Microsoft的文檔中找到任何關於此的內容,我想我會問這裏,因爲每個人都是如此的樂於助人。

這是代碼我使用打印

Dim oWordApp As Word.Application 
    Dim oTargetDoc As Word.Document 
    oWordApp = New Word.Application 

    Select Case SQLdr("Priority") 
      Case 1 
       oWordApp.WordBasic.FilePrintSetup(Printer:=printPriority1, DoNotSetAsSysDefault:=1) 
      Case 2 
       oWordApp.WordBasic.FilePrintSetup(Printer:=printPriority2, DoNotSetAsSysDefault:=1) 
      Case 3 
       oWordApp.WordBasic.FilePrintSetup(Printer:=printPriority3, DoNotSetAsSysDefault:=1) 
      Case 4 
       oWordApp.WordBasic.FilePrintSetup(Printer:=printPriority4, DoNotSetAsSysDefault:=1) 
      Case 5 
       oWordApp.WordBasic.FilePrintSetup(Printer:=printPriority5, DoNotSetAsSysDefault:=1) 
    End Select 

    oTargetDoc = oWordApp.Documents.Open(SQLdr("DocumentName") & ".doc") 
    oWordApp.PrintOut() 
    oWordApp.Documents.Close() 
    oWordApp.Quit() 
+0

爲什麼不直接在後臺線程上執行它?這也是客戶端自動化不是嗎?現在大多數人都想做相反的事情,並使用所有的核心:http://msdn.microsoft.com/en-us/magazine/cc163340.aspx – 2012-04-03 03:19:40

+0

在一個完美的世界中,最好讓它在服務器上運行但是在服務器上有幾件事情,當它變得CPU飢餓時,它會隨着服務器的性能而變化。 – Rambomst 2012-04-03 04:11:59

+0

我實際上是在警告你,我已經記住了知識庫文章KB 257757 - 從未做過辦公室的服務器端自動化,比如PITA。除非你使用XML來完成,但即使這樣我會大量測試。那麼關於後臺線程的其他想法呢? – 2012-04-03 04:16:33

回答