Share via


Outlook Signature Registry Settings

Question

Tuesday, February 24, 2015 1:40 PM

Hello,
I'd like to understand once for all and share with you what I learned during my tests about Outlook signatures and registry settings.

When a user create and then set signature for new messages and replies, the information are stored by Outlook under registry keys New Signature and Reply-Forward Signature (REG_BINARY) respectively. A good explanation here Configuring Outlook for the signatures within the users registry.
The registry path depends on Outlook version:

Outlook 2007, 2010

HKCU\Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles\<Profile Name>\9375CFF0413111d3B88A00104B2A6676\<0000000x>

Outlook 2013

HKCU\Software\Microsoft\Office\15.0\Outlook\Profiles\<Profile Name>\9375CFF0413111d3B88A00104B2A6676\<0000000x>

Now, If you don't want users be able to change their signature from Outlook (options grayed out), it's necessary to set registry keys NewSignatureReplySignature (REG_SZ). A good explanation here Disable End-User's Ability to Add, Edit, & Remove Outlook Signatures.
The path where they are is this:

HKCU\Software\Microsoft\Office\<Version>\Common\MailSettings

But what is written on this Microsoft KB How to deploy a default email signature in Outlook is little bit different (below point 6):

"...By using these steps, the specified signature will automatically appear in new e-mail messages (and optionally, replies to e-mail messages). However, users are still able to manually edit or remove these default signatures. ..."

That isn't true because, as written above, if both registry keys NewSignature and ReplySignature are set the option are grayed out and users cannot change signature from Outlook.

**Note: **If registry key First-Run is deleted, after Outlook has been started, then it is being added back again and the NewSignature and ReplySignature values are automatically being removed, and users are able to change their signature from Outlook. A good explanation here Setting up a Corporate Signature (source HowTo-Outlook).
This is the path where registry key is stored:

HKCU\Software\Microsoft\Office\<Version>\Outlook\Setup

What about ? Are all these information right ? Is there an error on Microsoft KB ?

Thank you very much,
Luca

Disclaimer: This posting is provided AS IS with no warranties or guarantees, and confers no rights. Whenever you see a helpful reply, click on [Vote As Help] and click on [Mark As Answer] if a post answers your question.

All replies (22)

Monday, March 2, 2015 9:10 AM

Hi Luca,

The Microsoft KB article is correct. According to my testing. the registry keys NewSignature and ReplySignature won't make the signatures option grayed out, they only change the default email signatures when composing a message or replying a message.

Regards,

Steve Fan
TechNet Community Support

It's recommended to download and install Configuration Analyzer Tool (OffCAT), which is developed by Microsoft Support teams. Once the tool is installed, you can run it at any time to scan for hundreds of known issues in Office programs.


Monday, March 2, 2015 10:01 AM

Hello Steve,
I'm sorry but I don't agree with you totally: if you set **NewSignature **and ReplySignature and you never started MS Outlook before or you removed HKCU\Software\Microsoft\Office\Version>\Outlook\Setup\First-Run key, then they are set as default only (no options grayed out). But if latest registry key is already present, then options are grayed out.

If you don't agree with me, then, answer to this: if NewSignature and ReplySignature won't make the signatures option grayed out, then what are registry keys to set options grayed out ?

Bye,
Luca

Disclaimer: This posting is provided AS IS with no warranties or guarantees, and confers no rights. Whenever you see a helpful reply, click on [Vote As Help] and click on [Mark As Answer] if a post answers your question.


Thursday, May 21, 2015 2:41 PM

I'm seeing the same behavior.

Did you ever solve this issue?


Friday, May 22, 2015 10:02 AM

Hello Elan,
you can manage it as you prefer (refer to first post).
I wrote this post to know if Microsoft KB was wrong or not (because I experienced a different behavior).

What's your objective ?

Bye,
Luca

Disclaimer: This posting is provided AS IS with no warranties or guarantees, and confers no rights. Whenever you see a helpful reply, click on [Vote As Help] and click on [Mark As Answer] if a post answers your question.


Tuesday, July 28, 2015 4:22 PM

I can confirm Luca's comment about the NewSignature, ReplySignature and First-Run keys. If the first two are set to anything, and First-Run is missing, all the buttons for Signatures are disabled.


Thursday, December 10, 2015 9:44 AM

Hi,

I have the same problem. Has anyone an issue ?

Thank you for your reply

Cédric


Thursday, December 31, 2015 5:08 PM

Hi,

I've done the registry updates using group policy across my domain. I did not touch the 'First-Run' key at all.  The users using Outlook 2013 are able to edit/add signatures while having the default signature set. The users using Outlook 2007 have the default sig set but all signature options are grayed out. I would like all users to be able to edit/change their signatures while having the corporate sig set as default.

Sounds weird, but I do need that option. 

How do I have the users using 2007 be able to edit their signatures while having the default sig set thru registry?


Friday, January 22, 2016 6:17 PM

I have the same issue Primecav.  I built a small program that automatically generates the signature (GP just didn't have the options I needed), I used a GPO to run the exe at user login.  The program sets the New/Reply Signature values in the registry.  Everything works beautifully except that users on Outlook 2010 and earlier have the signatures button greyed out; while Outlook 2013 & 2016 users still have the option to change the signature on a per message basis.  Sometimes users have a need to use a different signature...  forcing them to upgrade to 2013/2016 just to change the signature occasionally is not a viable option.  The only "workaround" I have found is to remove the registry values after Outlook is opened at least once with the values set.  The default signature stays and allows the 2010 users to change the signature from the ribbon 'Signatures' button.  

Create Signature Files
Set Registry Values
Open Outlook
Close Outlook
Remove Registry Values
Open Outlook

Not a great solution but it works for now :/


Wednesday, July 13, 2016 11:03 PM

I'm not positive here, but I'm guessing this might be related to whether you are using Exchange along with Outlook 2007/2010 (but seems to not affect 2013, likely because it was changed for that version).  With my setup, using Exchange, the reg keys under common\mail don't work and instead gray out the signature options.  I think this is because with an Exchange account the keys that tell Outlook which signatures to use for new mail and replies are stored instead in the Windows Messaging Subsystem registry section you noted above.


Wednesday, July 13, 2016 11:13 PM

Actually, I was able to get this working on my own machine, by deleting the First-Run key:

Remove the First-Run value name from:
HKEY_CURRENT_USER\Software\Microsoft\Office\version>\Outlook\Setup
Add the NewSignature and ReplySignature value names to:
HKEY_CURRENT_USER\Software\Microsoft\Office\version>\Common\MailSettings
Their string values need to be set to the name of the signature.

Outlook 2010 with Exchange 2010.  


Thursday, March 2, 2017 4:31 PM

Actually, I was able to get this working on my own machine, by deleting the First-Run key:

Remove the First-Run value name from:
HKEY_CURRENT_USER\Software\Microsoft\Office\version>\Outlook\Setup
Add the NewSignature and ReplySignature value names to:
HKEY_CURRENT_USER\Software\Microsoft\Office\version>\Common\MailSettings
Their string values need to be set to the name of the signature.

Outlook 2010 with Exchange 2010.  

I have tried this method several times without success.

I close Outlook. Delete the HKEY_CURRENT_USER\Software\Microsoft\Office\version>\Outlook\Setup First-Run value. then I create the NewSignature and ReplySignature values in HKEY_CURRENT_USER\Software\Microsoft\Office\version>\Common\MailSettings.

When I re-open Outlook the NewSignature and ReplySignature entries are deleted from the registry and there are no signatures in Outlook. The files are present in %userprofile%\AppData\Roaming\Microsoft\Signatures

The Bomb Squad mantra: We take a licking if it stops ticking.


Thursday, March 2, 2017 8:20 PM

If it's not working, try putting them in the policy key - 
HKEY_CURRENT_USER\Software\Policies\Microsoft\office\16.0\common\MailSettings 
String: NewSignature and ReplySignature
Value: Signature display name

When you do this, all accounts in the profile use the signatures you defined and they can't be changed. 

(FWIW, changing the signature is disabled here with HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Common\MailSettings too, using outlook 2016 pro plus subscription. Results may vary with the Home/Personal subscriptions.)

if you change the values of 'Reply-Forward' or 'New Signature' in HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Outlook\Profiles\Outlook\9375CFF0413111d3B88A00104B2A6676\0000000*, users will be able to edit them.

Diane Poremsky [MVP - Outlook]
Outlook & Exchange Solutions Center
Outlook Tips
Subscribe to Exchange Messaging Outlook weekly newsletter


Friday, March 3, 2017 12:02 AM

Hello BomSquad,
look at registry key part of my PowerShell script PowerShell Script to Deploy Outlook Signature. This script, depending on Outlook signatures, set registry keys:

  1. Unset Outlook signature from registry
  2. Set default signature name as default
  3. Set signature name as default and lock signature on registry (prevents user from changing it on Outlook)
  4. Unlock signature

If you find how registry keys for Outlook signature are set in the script, you will get answer to your question.

Bye, 

Disclaimer: This posting is provided AS IS with no warranties or guarantees, and confers no rights. Whenever you see a helpful reply, click on [Vote As Help] and click on [Mark As Answer] if a post answers your question.


Wednesday, September 20, 2017 1:02 AM

We have also encountered this when attempting to setup a new signature for a client.

They had an existing signature set with the registry key we are using a new name created the file and when we select it manually it works fine. Attempting to select the keys sets it but locks the buttons out then become grayed.

@Diane Poremsky

HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Outlook\Profiles\Outlook\9375CFF0413111d3B88A00104B2A6676\0000000*

Does this suggestion work, has anyone tried it we'll have to make some adjustments to find all profiles inside here and adjust them if thats the case.


Wednesday, September 20, 2017 3:36 AM

This key is where the signature assignments are stored when the user goes into the signature dialog and assigns a signature to an account.  if you use this key, users can go into the signatures dialog and change the signature. 

HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Outlook\Profiles\profile name>\9375CFF0413111d3B88A00104B2A6676\0000000n <== each account in the profile will have the New and Reply-Forward signature keys under the account's key (actual accounts should start with 00000002)

if you don't want users changing the signature, use the mailsettings key. 

Diane Poremsky [MVP - Outlook]
Outlook & Exchange Solutions Center
Outlook Tips
Subscribe to Exchange Messaging Outlook weekly newsletter


Wednesday, October 18, 2017 7:30 PM

The spiceworks link has incorrect examples.

For example the key for disabling signatures is "DisableSignatures" NOT "DisableSignature" as shown on Spiceworks.


Wednesday, August 22, 2018 5:04 PM

For the same reasons, i need to be able to be able to import what might be called an "HTML Signature Template" for any new Users in the company that would allow them to change certain fields such as their Name, Company Position or title, Cell Number and Local Office extension.  But the general aspects of the signature should be exactly the same for all Users.  If possible, i need to lock the fields that should not be changed.

So far, i have not been able to come up with one that works.  The company logo, colors, font sizes, etc that are used are things that need to be set and locked so we dont end up with everybody's signature looking different in one way or another.  I was hoping to find a way to implement this either as something that could be done when I first install Office 365 on their system or as a signature template they could edit and then paste into the signature options on the Desktop software.

It would be OK if this is something that i can do in the ADMIN section of the Exchange settings for the company as well ..As long as it would also be implemented in the desktop versions.  Most Users stick with using their Desktop version 90% or more of the time which is why i would rather deal with that than do it from the Exchange Server end.  


Tuesday, July 9, 2019 11:34 PM

I did pass to change these keys and do a first-run deletion, but when I start Outlook back, the signature is not set up as default...

Do you have any ideas why? Thanks.

NB: I prefer the users to be able to change their signature afterward.


Friday, September 20, 2019 10:05 AM

There are several "000000n" key under "9375CFF0413111d3B88A00104B2A6676". How do I find the correct one? I need to do this for all the domain users.


Friday, September 20, 2019 11:33 AM

Hello DHKao,
the trick for finding the right "00000n" key is to look at binary value of "ED475418-B0D6-11D2-8C3B-00104B2A6676" (inside "9375CFF0413111d3B88A00104B2A6676"):

I share this VBscript that could help with the purpose:

Const HKEY_CLASSES_ROOT = &H80000000
Const HKEY_CURRENT_USER = &H80000001

Set WsNet = WScript.CreateObject("WScript.Network")
computerName = UCASE(WsNet.computerName)

Set WmiRegistry = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & computerName & "\root\default:StdRegProv")

'Get Outlook Version (if installed)
WmiRegistry.GetStringValue HKEY_CLASSES_ROOT, "Outlook.Application\CurVer", "", olVersion

If Not IsNull(olVersion) Then 
    
    olVersion = Mid(olVersion, InStrRev(olVersion, ".") + 1) & ".0"
    If olVersion = "15.0" Then
        'Outlook 2013
        olProfilesRegPath = "Software\Microsoft\Office\" & olVersion & "\Outlook"
        
        'Get Default Outlook 2013 Profile Name (if exists)
        WmiRegistry.GetStringValue HKEY_CURRENT_USER, olProfilesRegPath, "DefaultProfile", olProfileName
    Else
        olProfilesRegPath = "Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem"    
        
        'Get Default Outlook Profile Name (if exists)
        WmiRegistry.GetStringValue HKEY_CURRENT_USER, olProfilesRegPath & "\Profiles", "DefaultProfile", olProfileName
    End If

    If Not IsNull(olProfileName) Then
        olProfileRegPath = olProfilesRegPath & "\Profiles\" & olProfileName & "\9375CFF0413111d3B88A00104B2A6676"

        WmiRegistry.GetBinaryValue HKEY_CURRENT_USER, olProfileRegPath, "{ED475418-B0D6-11D2-8C3B-00104B2A6676}", olProfileRegKeys
        If IsArray(olProfileRegKeys) Then
            Dim i
            For i = UBound(olProfileRegKeys) To LBound(olProfileRegKeys) Step -1
                olProfileRegKey = olProfileRegKey & olProfileRegKeys(i)
            Next

            If Len(olProfileRegKey) > 0 Then
                olProfileRegKey = String(8-Len(olProfileRegKey), "0") & olProfileRegKey
            End If
        End If
    End If

End If

Msgbox olProfileRegKey

The olProfileRegKey variable contains the right key.

Bye,
Luca

Disclaimer: This posting is provided AS IS with no warranties or guarantees, and confers no rights. Whenever you see a helpful reply, click on [Vote As Help] and click on [Mark As Answer] if a post answers your question.


Monday, September 23, 2019 9:51 AM

Luca. Thanks for the code. But it return the wrong value if Outlook has 2 accounts.

For example.

If only 1 account (e.g. abc@gmail.com). The return value is "00000006". Which is correct.

Added 1 more account (e.g. def@yahoo.com) which key is "00000008". When run the vbs code. It return "00080006".

Also, I want to use powershell only. My plan is to loop through all those subkeys. Get the string of "REG_BINARY Account Name" in order to find the correct account.


Thursday, March 5, 2020 10:27 AM

Hi,

i disabled the signature in outlook using GPO  by following Disable End-User's Ability to Add, Edit, & Remove Outlook Signatures. and it is working fine. but the problem is some users have multiple accounts. when they click new or reply email and then choose 2nd email from! from list the signature not show automatically. hope you get it,