How to programmatically set the processor affinity of an application – Updated

A few months back I wrote a post explaining how to set the processor affinity of an application using a little free utility called process.exe. Soon after, our new antivirus software (NOD32) flagged process.exe as a threat, removed it, and prevented me from reinstalling it. I had to look for another solution and discovered Microsoft Application Compatibility Toolkit 5.0.

As an example, I’ll show you how to set the processor affinity of Microsoft Word to force it to use only 1 processor on a dual core system:

1. Download and install Microsoft Application Compatibility Toolkit 5.0 (you need Application Compatibility Toolkit.msi)

2. Go to Start>Programs>Microsoft Application Compatibility Toolkit 5.0 and click on Compatibility Administrator. The following window appears (click to enlarge):

Compatibility Administrator window

 

3. Right-click on New Database(1)[Untitled_1] and select Create New>Application Fix:

Application Fix

 

4. Complete the Program information page and click Next. Note that the name of the program and the name of the vendor can be anything you want, only the path to the exe has to be exact:

Create new Application Fix

 

5. Because we are only interested in setting the processor affinity, select None on the Compatibility Modes page and then click Next:

Compatibility Modes

 

6. This is the page we are interested in. Scroll down to select SingleProcAffinity in the list of compatibility fixes, then click Next:

Create new Application Fix

 

7. Do not change any settings on the last page unless you know what you are doing. Just click Finish:

Create new Application Fix

 

8. Click on File>Save. First give a name to your database:

Save Database

Then save the actual database file:

Save Database file

 

9. Finally, install the fix by right-clicking the name of your database and selecting Install:

Install Fix

 

10. Done! You can now close the Compatibility Administrator. Next time you launch Word, it will only use one CPU.

4 responses to “How to programmatically set the processor affinity of an application – Updated

  1. Awesome Post.. Thanks a million.. I did this for outlook and it seemed to solve the slow opening of links within emails as well..

  2. where is ‘programmatically’ in the article?
    thanks anyway

  3. artikel menarik , Afra

  4. info yang sangat menarik, sepertinya harus dicoba 🙂 , Affleck

Leave a reply to Pat Cancel reply