2012-04-10 12 views
2

Active Directoryからの情報を取得し、Mac用Microsoft Outlookで新しい署名を作成するスクリプトを作成しました。 STRNAMEは、私が他の場所から取得した署名の名前ですAppleScriptでデフォルトのMicrosoft Outlook for Maclesを設定します。

tell application "Microsoft Outlook" 

    make new signature with properties {name:strName, content:contentHTML, plain text content:"", include in random:false} 

end tell 

を:

は、私は(それは本当に関係ありませんように私は、出て他のコードを残します)署名を作成するには、次のコードを使用しますcontentHTMLはHTMLの実際の署名で、他の場所に構築します。

このシグネチャをMicrosoft Outlookに追加する作業は完全ですが、作成したシグネチャを現在のアカウントのデフォルトのシグネチャに設定する方法がわかりません。私は全く助けてくれていない非常に多くの研究をしており、私は辞書の周りにも突っ込んできました。

+0

これはAppleScriptまたはシェルスクリプトでは実行できません。Outlook 2011は、フォルダ/ Documents/Microsoft User Data/Office 2011 Identitiesにあるデータベースに署名とメールアカウントを保存します/メインアイデンティティ/ '。私はアカウントからデフォルト署名へのマッピングがどこかにあると確信していますが、Outlookが気付かずに(データベースファイルが変更されたときに、Outlookが次の起動時に再構築する)気にせずに改ざんする方法はわかりません。 – fanaugen

+0

ありがとうございます。私はそれを見て:)。この種の機能はOutlookで役に立ちます。 – Frank

答えて

3

これはAppleScriptで行うことができます。 Outlook 2011の辞書には特にこれを行うものは何もありませんので、代わりにUI要素をスクリプト化することでこれを行うことができます。これは明らかにむしろ面倒です。

署名はアカウント単位で設定されるため、このスクリプトにアカウントの名前とそのアカウントに設定する署名の名前を指定する必要があります。

setDefaultSignature to "strName" for "Gmail" 

on setDefaultSignature to mySignature for accountName 
    tell application "Microsoft Outlook" to activate 
    tell application "System Events" 
    -- turn on UI automation - may throw a permissions dialog 
    if UI elements enabled is false then set UI elements enabled to true 

    click menu item "Preferences..." of menu 1 of menu bar item "Outlook" of menu bar 1 of application process "Outlook" 
    click item 1 of (buttons of window "Outlook Preferences" of application process "Outlook" whose description is "Signatures") 
    click button "Default Signatures..." of window "Signatures" of application process "Outlook" 

    repeat with thisRow in rows of table 1 of scroll area 1 of sheet 1 of window "Signatures" of application process "Outlook" 
     if value of text field of thisRow as string is accountName then 
     click pop up button 1 of thisRow 
     click menu item mySignature of menu 1 of pop up button 1 of thisRow 
     click button "OK" of sheet 1 of window "Signatures" of application process "Outlook" 
     click item 1 of (buttons of window "Signatures" of application process "Outlook" whose description is "close button") 
     exit repeat 
     end if 
    end repeat 
    end tell 
end setDefaultSignature 
+0

&Frankこの問題は解決しましたか、同僚が実行できるスクリプトを作成でき、HTMLファイルに基づいて署名をインストールできるかどうか知っていますか? (osxまたはMacOS上のOutlook) – OnkelK

関連する問題