By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
424,851 Members | 1,078 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 424,851 IT Pros & Developers. It's quick & easy.

How can I set affinity ofthe Word.Application object to one proces

P: n/a
Hi all,

We have noticed that using the Word OLE is much slower on dual processor
machines.
Limiting the processor affinity to one processor helps.
So, I want to set the affinity in my C# code.

I succeeded with the following code:
oWord = new Word.Application();
Process[] wordProcesses = Process.GetProcessesByName("WINWORD");
if (wordProcesses.Length == 1) {
(wordProcesses[0]).ProcessorAffinity = new IntPtr(1);
}

However, I only want to effect the WINWORD process I just created.
And not any others that might be running.
For now, I worked around this by seraching for the WINWORD process with the
latest timestamp. This works, but does not feel like great code.

Is there any way to get from an Word.Application object to its associated
process?
Can I get the ProcessID in some way?

Any help is appreciated,
Thanks,
Tony.
Oct 31 '06 #1
Share this Question
Share on Google+
1 Reply


P: n/a
You want to get the PID right? Here:
http://www.csharphelp.com/archives2/archive334.html

chanmm
"theTone" <th*****@discussions.microsoft.comwrote in message
news:21**********************************@microsof t.com...
Hi all,

We have noticed that using the Word OLE is much slower on dual processor
machines.
Limiting the processor affinity to one processor helps.
So, I want to set the affinity in my C# code.

I succeeded with the following code:
oWord = new Word.Application();
Process[] wordProcesses = Process.GetProcessesByName("WINWORD");
if (wordProcesses.Length == 1) {
(wordProcesses[0]).ProcessorAffinity = new IntPtr(1);
}

However, I only want to effect the WINWORD process I just created.
And not any others that might be running.
For now, I worked around this by seraching for the WINWORD process with
the
latest timestamp. This works, but does not feel like great code.

Is there any way to get from an Word.Application object to its associated
process?
Can I get the ProcessID in some way?

Any help is appreciated,
Thanks,
Tony.


Nov 1 '06 #2

This discussion thread is closed

Replies have been disabled for this discussion.