-1
私は少しのOffice Automationを行っていますが、VB.NET OfficeリファレンスDLLを使用して.docファイルを印刷するとCPU負荷が大きくなります。そのため、単一の仮想コアのみを使用するように制限します。Officeオートメーションとプロセスアフィニティ
私はこれに関する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()
なぜあなたはバックグラウンドスレッドでそれをやっていませんか?これはクライアント側の自動化でもありませんか?最近のほとんどの人は逆を行い、すべてのコアを使用したいと思っています。http://msdn.microsoft.com/en-us/magazine/cc163340.aspx –
完璧な世界では、サーバー上で動作させるのが良いでしょうそれだけでは、そのサーバーにはいくつかのことがあり、CPUが空いてしまうと、サーバーのパフォーマンスが失われます。 – Rambomst
私は実際にあなたにそれについて警告していました。KB記事KB 257757を覚えました.PITAのようなサーバー側のオフィスオートメーションを行うことはありません。あなたがXMLでそれをやっていない限り、それでも私は重くテストしています。だから、私の背景スレッドの他のアイデアはどうですか? –