ProfileTool

Windows 7 profile management and default profile utility
(c) 2010 by Toussaint OTTAVI (t.ottavi@medi.fr)

Download link :
http://sourceforge.net/projects/profiletool/

What is it ?

ProfileTool is a command line utility for profile management under Windows 7. You can copy profiles, set profiles as default, display the list of all profiles with their size, purge temporary files, and other things.

It's written in Python, and distributed as GPL license, so that you can easily customize it for your own needs.

Abstract

When configuring machines for business/enterprise use, you often need to build specific configurations, with third-party software, drivers, network shortcuts, and so on. You usually want to standardize these configurations, so that all the users, on all the machines, will get them by default, instead of the Windows default settings.

With the good old Windows XP, there was a feature called "copy profile". You just had to define your standard settings just like a standard user would do, then copy this user profile into the "default user" profile, so that all the future users of the machine will get all your settings automatically.

Unfortunately, Microsoft removed this feature in Windows 7. Don't try to understand why. The official answer is : "You should not use the copy profile feature, you should use the deployment tools instead". This is a very common behavior from this company. Microsoft usually tries to impose their vision of things instead of proposing it.

Of course, Microsoft proposes a lot of tools / features to achieve the same goal. Among them : SysPrep, Group Policies, Logon scripts. All these are complex tools, that suit complex needs, if you have several hundreds of machines, and maybe several hundreds of hours to spend. But none of them can do simple things, such as setting up quickly a few machines.

That's the reason why I decided to write this tool.

Disclaimer

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the (included) GNU General Public License for more details.

You will especially consider that this method of handling profiles is completely unsupported by Microsoft, and, according to them, it will break your systems.

Moreover, it works for me. I developped it for my business, because we absolutely need it. And I'll try to fix the "broken" things as far as I discover them.

Features

ProfileTool is a command line tool. Just run ProfileTool -h to get some help.

Usage : ProfileTool <Command> <ProfileName> [DestProfileName] [Options]

Available commands are :

SETDEFAULT

This is certainly the most useful command. It will mimic the Windows XP copy profile feature. It will copy the content of the specified user profile name into the "Default User" folder. As with Windows XP, you can not set the profile you are logged in as default, because some files are in use and can not be copied. You must login with another user account with Administrator privileges.

Example : 
ProfileTool SETDEFAULT BillGates

LIST

This command will display the list of all the existing profiles in the system. Basically, it displays the content of the "Users" folder, minus the reserved names such as "All Users" and "Default".

GETSIZE

This command will display the size of the specified user profile. Several sizes are computed :
- Documents : The contents of user documents (documents, pictures, mosic, videos). By default, these will not be copied during COPY or SETDEFAULT (unless you use the -D option)
- Temporary : Temporary files and temporary Internet files (those that will be deleted by the PURGE command)
- Local : Content of AppData/Local (typically, data that will NOT be copied during COPY or SETDEFAULT operations)
- Roaming : Content of AppData/Roaming (application data that WILL be copied during COPY or SETDEFAULT operations)

Example : ProfileTool GETSIZE BillGates

GETSIZEALL

With no arguments. It will do a GETSIZE on ALL existing profiles.

DELTEMP

Will delete all the temporary files in the selected profile. Deleted files are : TEMP folder, Temporary Internet Files, Internet Explorer History and Mozilla Firefox cache.

Example : ProfileTool DELTEMP BillGates

DELTEMPALL

Will do a DELTEMP on ALL existing profiles.

DELETE

Will completely delete the selected profile. Use with caution. It will delete the corresponding folder in the Users directory. In case of any error, several attempts are made.

Example : ProfileTool DELETE BillGates

COPY

Will copy ay user profile over any other existing one. (Not tested so much for now)

Example : ProfileTool COPY BillGates SteveBallmer

-D switch (Documents)


When using COPY ou SETDEFAULT command, by default, the user documents (the content of Documents, Pictures, Videos and Music folders) are not copied, because you usually want to copy the settings from a profile to another, but you don't want to copy some hundreds of megabytes of MP3/DIVX files usually found here...

If you use the -D switch, these documents will be copied, too.

History

V0.9.3 (03/01/2010) : Initial release

Future plans

Additional options may be added in the future, as far as I discover non-working things.

Future plans include :

- Improve HTML site and documentation
- Fix the wallpaper disappearing problem

- Copy registry-based settings (such as printers)
- Add switches for additional folder management (such as Outlook or Thunderbird data)
- Add a GUI

Contact & License

ProfileTool is (c) 2010 by Toussaint OTTAVI (t.ottavi@medi.fr)

It can be found here :
http://profiletool.sourceforge.net
http://sourceforge.net/projects/profiletool/

ProfileTool is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program.  If not, see http://www.gnu.org/licenses/