Logon Script ile Uzaktan Outlook Profili Tanımlama

Barış BAYRAM

Bir Exchange organizasyonunda yaşanan büyük sıkıntılardan birisi, kullanıcının farklı bilgisayarlarda oturum açması karşısında posta kutularına ulaşamamasıdır.
Her bilgisayar için ayrı ayrı tanımlanması gereken profil ayarları Logon Script ile de mümkün olmakta.
Kendi denemelerimde ilk oturum açılışında Outlook otomatik olarak profil sorguladığı için hata verebiliyor. Ancak ilk oturumu kapatıp yeniden oturum açıldığında herhangi bir sorun yaşanmıyor.
İlk iş olarak Custom Maintenance Wizard ve Office 2003/2007 Özelleştirmeleri linkinden elde ettiğimiz .prf dosyasını sunucu üzerinden paylaşıma açmalıyız.
Ardından aşağıdaki kodları .vbs olarak kaydederek,
strValue = “\\sunucu_adi\SYSVOL\etkialani.com\SCRIPTS\PRF\otomatikoutlook.PRF” satırını kendinize göre düzenleyiniz.

const HKEY_CURRENT_USER = &H80000001
strComputer = “.”
Set StdOut = WScript.StdOut

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

‘——————————————————————————–
Dim strKeyPath
strKeyPathMS=”Software\Microsoft”
strKeyPathOffice=”Software\Microsoft\Office”
strKeyPathOffice11=”Software\Microsoft\Office\11.0″
strKeyPathOffice10=”Software\Microsoft\Office\10.0″

okMS=false
ok11=false
ok10=false
ok11Outlook=false

‘HKEY_CURRENT_USER\Software\Microsoft\Office varmı?
oReg.EnumKey HKEY_CURRENT_USER, strKeyPathMS, arrSubKeys
For Each subkey In arrSubKeys
if subkey = “Office” then
okMS=true
exit for
end if
Next

If okMS=true then

‘HKEY_CURRENT_USER\Software\Microsoft\Office\11.0 varmı?
oReg.EnumKey HKEY_CURRENT_USER, strKeyPathOffice, arrSubKeys
For Each subkey In arrSubKeys
if subkey = “11.0” then
ok11=true
exit for
end if
Next

‘HKEY_CURRENT_USER\Software\Microsoft\Office\10.0 varmı?
oReg.EnumKey HKEY_CURRENT_USER, strKeyPathOffice, arrSubKeys
For Each subkey In arrSubKeys
if subkey = “10.0” then
ok10=true
exit for
end if
Next

If ok11 = true then ‘Office 2003 Kurulu
oReg.EnumKey HKEY_CURRENT_USER, strKeyPathOffice11, arrSubKeys
For Each subkey In arrSubKeys’HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Outlook varmı?
if subkey = “Outlook” then
ok11Outlook=true
exit for
end if
Next

If ok11Outlook=true Then
strKeyPath=”SOFTWARE\Microsoft\Office\11.0\Outlook\Setup”
EditRegistry()
Else
Check10Outlook()
End If

Else
Check10Outlook()
End If

End If

Sub Check10Outlook()
If ok10=true Then
oReg.EnumKey HKEY_CURRENT_USER, strKeyPathOffice10,arrSubKeys
For Each subkey In arrSubKeys
if subkey = “Outlook” then
strKeyPath=”SOFTWARE\Microsoft\Office\10.0\Outlook\Setup”
EditRegistry()
exit for
end if
Next
End If
End Sub
‘——————————————————————————–

Sub EditRegistry()
oReg.CreateKey HKEY_CURRENT_USER,strKeyPath
‘strKeyPath = “SOFTWARE\Microsoft\Office\10.0\Outlook\Setup”
strValueName = “ImportPRF”
strValue = “\\sunucu_adi\SYSVOL\etkialani.com\SCRIPTS\PRF\otomatikoutlook.PRF”
oReg.SetStringValue HKEY_CURRENT_USER,strKeyPath,strValueName,strValue

strBINARYValueName = “First-Run”
oReg.DeleteValue HKEY_CURRENT_USER,strKeyPath,strBINARYValueName
‘ Default Profile isminin değiştirilmesi
Set WshShell=WScript.CreateObject(“WScript.Shell”)
dim p
p=”HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles\”
WShShell.RegWrite p & “DefaultProfile”,”DEFAULT_EXCHANGE”,”REG_SZ”

End Sub

Bu yazıyı paylaş:
Bu yazıyı arkadaşınıza eposta ile yollayın  Bu makaleyi Facebook'ta paylaş  Bu makaleyi Twitter'de paylaş  Bu yazıyı Digg.com'da paylaş  Bu yazıyı Delicious'ta paylaş

Yorum Yapın

Yorum yapabilmek için giriş yapmalısınız.