Назад | Перейти на главную страницу

Скрипт для воссоздания почтового профиля Outlook 2010

Мне нужно воссоздать загрузку почтовых профилей пользователей в Outlook 2010. (Это долгая история!)

Чтобы попытаться уменьшить "ошибку пользователя", я хочу написать сценарий, чтобы он удалял почтовый профиль пользователя и воссоздавал замену.

Это возможно? Я видел Мастер обслуживания клиентов для Outlook 2003, но не могу найти аналога для 2010.

Outlook 2010 будет использовать автоматическую настройку, если вы можете настроить соответствующие записи DNS. Это не полностью автоматизирует процесс, но сократит его до 2-3 шагов и устранит 90% работы по настройке, которую они должны выполнить. Все, что им (теоретически) нужно знать, - это свое имя, адрес электронной почты и пароль.

Я предполагаю, что здесь есть одна машина с клиентом Outlook, не использующим Exchange.

Когда я обновил свой домашний компьютер с XP / Office 2003 -> Win 7 / Office 2010, я, к сожалению, заметил, что многие настройки и конфигурации Outlook не содержались в файле PST. Я извлек эту информацию из реестра пользователей, используемого в XP, и импортировал их в реестр Win 7. Мои настройки в основном вернулись.

Моя особая забота заключалась в том, что я использую свой Outlook-клиент для доступа к разным почтовым ящикам на разных машинах. Но это помогло, и мне не пришлось прилагать усилия к добавлению вручную (не говоря уже о том, чтобы помнить, что я делал раньше).

В вашем случае найдите конкретную область в реестре пользователей, сохраните ее, выполните обновление.

Кстати, я недавно обновился на месте с 2003 ---> 2010 на работе, и все мои настройки сохранились и были правильно преобразованы.

Я предпочитаю этот сценарий, поэтому люди могут делать это сами, когда сталкиваются с проблемой в своем профиле Outlook.

  • Он проверяет, хочет ли пользователь запустить сценарий.
  • Закрывает Outlook.
  • Очищает настроенные профили в реестре пользователя.
  • Создает новый профиль (* вы можете изменить имя нового профиля с помощью% username%, если хотите.)
  • Открывает Outlook с новым профилем для пользователя.

Сценарий:

'
' Use this script when user's emails get stuck in Outbox
' l0c0b0x/jb put this one together 9/13/2012
' Change log
' 1.0 initial release
' 1.1 Added registry string to specify a default profile on the account
' -----------------------------------------------------------

' Ask user if they wish to continue with re-creation of their ouotlook profile
intAnswer = _
    Msgbox("This script will remove and recreate your outlook profile on this computer.  Would you like to continue?", _
        vbYesNo, "Reset Outlook Profile")

If intAnswer = vbYes Then

Else
    WScript.Quit
End If

' Close all instances of Outlook
Set objShell = CreateObject("WScript.Shell") 
Set objWmg = GetObject("winmgmts:") 
strWndprs = "select * from Win32_Process where name='outlook.exe'" 
Set objQResult = objWmg.Execquery(strWndprs) 
For Each objProcess In objQResult
    intReturn = objProcess.Terminate(1) 
Next

' Remove registry keys for Outlook Profile
On Error Resume Next
const HKEY_CURRENT_USER = &H80000001
strComputer = "."

Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &_ 
strComputer & "\root\default:StdRegProv")

strKeyPath = "Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles"
DeleteSubkeys HKEY_CURRENT_USER, strKeyPath

Sub DeleteSubkeys(reghive, KeyPath) 
    Set objReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &_ 
strComputer & "\root\default:StdRegProv")
    objReg.EnumKey reghive, KeyPath, arrrSubkeys 

    If IsArray(arrrSubkeys) Then 
        For Each strrSubkey In arrrSubkeys 
            DeleteSubkeys reghive, KeyPath & "\" & strrSubkey 
        Next 
    End If 

    objReg.DeleteKey reghive, KeyPath 

End Sub
' Add registry key for new profile
strKeyPath = "Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles\newprofile"
oReg.CreateKey HKEY_CURRENT_USER,strKeyPath

' Add registry string to specify default profile
strKeyPath = "Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles"
strValueName = "DefaultProfile"
strValue = "newprofile"
oReg.SetStringValue HKEY_CURRENT_USER,strKeyPath,strValueName,strValue

' Launch Outlook
objShell.Run "outlook.exe"