In my domain, we use local profiles rather than roaming profiles. However, from time to time, people log on to other workstations besides their own for various reasons. Until recently, I manually checked each workstation for unnecessary profiles stored locally, but finally I discovered the Delprof utility. I can execute Delprof remotely and ask it to remove from all our computers all profiles that have been unused for the past 90 days. Note that Delprof will even delete Administrator profiles, so you need to be careful when using it.

You can find Delprof in the various Windows resource kits. You can also download it from the Microsoft Download Center. (Go to http:// www.microsoft.com/downloads, and search on delprof.exe.) Delprof's syntax is simple. For example, the command

Delprof.exe /I /Q /C:\\pc1 /D:90 

tells Delprof to delete all the profiles that haven't been used in the past 90 days from the computer named PC1. The /I switch tells Delprof to ignore errors. The /Q switch tells the utility to delete profiles without confirmation. The /Q switch is important to include if you plan to automate the deletion process. When you don't include this switch, you must confirm that you want to delete each profile before Delprof will delete it.

To automate the deletion process, you can create a simple text file named computers.txt that contains all the names of the computers in your network. You need to put each name on a separate line. After you've created this file, run the following For command from the command-shell window:

For /f %a in (computers.txt) Do 
  Delprof.exe /I /Q /C:\\%a /D:90 

Delprof will then delete all the profiles that haven't been used in the past 90 days from the computers specified in the text file.

Alternatively, you can place the For command in a batch file, which you can then schedule to run periodically. Note that you must replace the two occurrences of %a with %%a to use this command inside a batch file. (When you use an iterator variable in a For command that you execute from a command prompt, you use one percent sign. When you use an iterator variable in a For command in a batch file, you must use a double percent sign.)

End of Article




You must log on before posting a comment.

If you don't have a username & password, please register now.

Reader Comments

Hi, when I run this program I recieve this error message, do you know what it means. "Failed to retrieve the profile path for"

mrg68

Article Rating 3 out of 5

This article has two large errors with it. The syntax for the "for in do" is wrong, it all needs to be on one line, NOT 2 as shown, or else you receive a syntax error message.

When I run the "for in do" from command prompt or in a batch file, after each computer listed in computer.txt I am asked if I want to delete the profiles off the local system that I ran the "for in do" from.

marcfromm

Article Rating 1 out of 5

 
 

ADS BY GOOGLE