Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 184
  • Last Modified:

Is there a way to create a new category for a group of people on our domain with Outlook 2003?

I need to create a new category for a group of people with Outlook 2003 on a single domain.  Is there an easy way to do this?
0
jerjos
Asked:
jerjos
1 Solution
 
felnyCommented:
can you make this question a little more specific?
0
 
jerjosAuthor Commented:
I want to create a new contact called "Homefront" in all of the Outlook 2003 user's contacts.  Can I have this pushed out to all of them?
0
 
tigermattCommented:

You can't push changes to individual users' Outlook profiles centrally. You'd either need to mail the contact to them as an attachment, which they can then open and save themselves, or add it to the Exchange GAL, where all users will be able to access it.

-Matt
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
David LeeCommented:
Greetings.

"You can't push changes to individual users' Outlook profiles centrally."
Well, that depends on your environment, what permissions you have, and how creative you are.  I agree that Outlook/Exchange does not have a built-in means of doing this.  If you are in an Exchange environment and you are an Exchange admin, then you can do it with a little creative scripting.  I think I can do it with a bit of creative scripting even if you aren't an Exchange admin, but that code would have to be added to each user's computer.  Unless you're going to have the need to distribute contacts to all employees more than once, then the level of effort required to do this isn't worth it.  If this is a recurring requirement, then it's worth the time to develop a means of distributing them automatically.  I can help with putting a script together if you want to explore an automated approach.
0
 
jerjosAuthor Commented:
Sorry guys, what I meant to say was this; I want to create a new category called "Homefront" in all of the Outlook 2003 user's contacts.  Can I have this pushed out to all of them?
0
 
David LeeCommented:
You can add a category to everyone's copy of Outlook with a bit of scripting.  Is that what you have in mind or do you mean you want to add the category to their contacts (as in every contact gets this category added)?
0
 
jerjosAuthor Commented:
Yes, I would like to add a category to everyone's copy of Outlook.
0
 
David LeeCommented:
jerjos,

This VBScript will add one or more categories to the master category list on any computer.  Call it from a login script and it'll take of this for you.  Here's how to use it

1.  Open Notepad
2.  Copy the code below and paste it into Notepad
3.  Edit the code as desired.  At a minimum you'll need to add the name(s) of the category(ies) to add.
4.  Save the file with a .vbs extension
5.  Test the code to make sure it works properly
6.  Add the code to a login script or place it in a central location and send out a link to it

I placed comments in the code to help explain how it works.
Const HKEY_CURRENT_USER = &H80000001
'Enter a semicolon separated list of values.  The string must end with a semicolon.'
Const NEWCAT = "My New Cat;"
Dim objRegistry, strKeyPath, strValueName, strValue, strDecode, i, j, arrBinary, varReturn
Set objRegistry = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\default:StdRegProv")
strKeyPath = "Software\Microsoft\Office\11.0\Outlook\Categories"
strValueName = "MasterList"
'Retrieve the current master category list'
objRegistry.GetBinaryValue HKEY_CURRENT_USER, strKeyPath, strValueName, strValue
'Decode the unicode values'
i = 0
Do While i <= UBound(strValue)
    strDecode = strDecode & Chr(strValue(i))
    i = i + 2
Loop
'Insert the new value'
strDecode = strDecode & NEWCAT
strDecode = Replace(strDecode, Chr(0), "")
intLen = (2 * Len(strDecode)) + 1
'Create a new array of unicode values'
ReDim arrBinary(intLen)
i = 1
j = 0
Do While i <= Len(strDecode)
    arrBinary(j) = Asc(Mid(strDecode, i, 1))
    arrBinary(j + 1) = 0
    i = i + 1
    j = j + 2
Loop
arrBinary(intLen - 1) = 0
arrBinary(intLen) = 0
'Write the values back into the registry'
varReturn = objRegistry.SetBinaryValue(HKEY_CURRENT_USER, strKeyPath, strValueName, arrBinary)

Open in new window

0
 
jerjosAuthor Commented:
Thanks BlueDevilFan! I will give this a try.
0
 
David LeeCommented:
You're welcome.
0
 
jerjosAuthor Commented:
I haven't had a chance to try this, we have since made the decision to upgrade to office 2007.
0
 
David LeeCommented:
FWIW - Pushing a new category to all staff is slightly more complicated with 2007.  Microsoft moved the categories out of the registry and into a hidden folder in Outlook.  There are ways to get to them, but nothing so simple as writing to the registry from a login script.
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Tackle projects and never again get stuck behind a technical roadblock.
Join Now