0

この問題の解決策を何時間も調査した後、まだ見つかっていません。おそらくあなたが私を助けることができると思いました...

メールの移行プロセスを自動化しようとしています。クライアント側で Outlook プロファイル ファイル (Office カスタマイズ ツールからの PRF ファイル) を作成し、設定などを更新します。最後に、データを pst にエクスポートします。 Outlook com オブジェクト (outlook.interop) はこれまでのところ非常に優れています。プロファイルを作成して Outlook を起動すると、「パスワードを記憶する」をチェックすると、ユーザー/パスを入力するための「資格情報を要求する」ウィンドウが表示されます。 "、windows はそれをボールトの資格情報に保存します。

ここで、Outlook を起動する前に資格情報を事前に作成したいので、Outlook は資格情報を要求せずに起動してボールトで見つけますが、ボールトで資格情報を手動で作成すると、Outlook はそれを使用せず、パスワードを要求します。私は cmdkey /generic:MS.Outlook:user@domain.com /user:$email /pass:$pass- を試してみましたが、機能しませんでした。その特定のユーザーキーなので、他のユーザーはそれを見ることができず、逆に資格情報を手動で作成すると、現在ログオンしているユーザーを暗号化のキーとして使用するため、Outlook を開いたときにパスワードが認識されないため、これは暗号化した現在のユーザーだけで機能するpowershell securestringと同じように、機能しない理由です。(しかし、それは今のところ私の意見です)

だから、おそらくあなたの一人は次の方法を知っています:

資格情報の作成を自動化し、それを Outlook プロファイル/アカウントにリンクするか、または: 別のユーザーとして資格情報を作成します。また、invoke-command を別のユーザーとして考えてから、'cmdkey' を実行しますが、コンピューター ドメインは同じではありません私のローカルコンピュータとして、

可能であればoutlook comオブジェクト、レジストリ、スクリプトなど、プロジェクトにとって非常に重要なアイデアは大歓迎です。その間、shell.sendkeyを使用してユーザーパスワードの入力を自動化しますが、実際には安定したソリューションではありません。

4

1 に答える 1

0

Outlook オブジェクト モデルは、ユーザーを MAPI にログオンさせて MAPI セッションを取得する Namespace クラスのLogonメソッドを提供します。資格情報ダイアログを回避できます。ShowDialog パラメーターを false に指定するだけです。

于 2015-06-18T06:16:25.173 に答える