2017-10-04 18 views
-1

私はいくつかの掘り下げを行い、Outlookでスクリプトを使ってPSTを削除する方法を見つけようとしています。スクリプトを書く方法は完全にはわかりませんが、学習しようとしています。私はこの古いStackoverflowを見つけましたが、私が実際に必要とする情報を実際に入力する方法は不明です。Outlook Powershell Script

How to disconnect PST file from Outlook using Powershell?

問題のスクリプトは以下の通りです。

$Outlook = new-object -com outlook.application 
$Namespace = $Outlook.getNamespace("MAPI") 

$PSTtoDelete = "c:\test\pst.pst" 
$PST = $namespace.Stores | ? {$_.FilePath -eq $PSTtoDelete} 
$PSTRoot = $PST.GetRootFolder() 


$PSTFolder = $namespace.Folders.Item($PSTRoot.Name) 
$namespace.GetType().InvokeMember('RemoveStore',[System.Reflection.BindingFlags]::InvokeMethod,$null,$namespace,($PSTFolder)) 

私はPST自体へのファイルパスを入力する場所を理解していますが、残りの行については何を入力するのか分かりません。

私はこれが初心者の質問であることを知っていますが、どんな助けも非常に高く評価されます。

ありがとうございました!

+1

は、あなたがそれを実行したのに役立ちます希望を書いた機能がありますか?間違いをしましたか?何か分かりませんか? – ArcSet

+0

"c:\ test \ pst.pst"以外に、このスクリプトの他の部分は何かを指し示す必要がありますか? –

+0

手がかりがありません。 doesntはそれのように見えます...実行し、どのようなエラーが表示されるのかを確認してください...デバッグを開始する方法は... – ArcSet

答えて

0

ここで私はちょうどそれが

function Remove-OutlookStore($StoreFilePath){ 
    get-process | where { $_.Name -like "Outlook" }| kill 
    $Outlook = new-object -com outlook.application 
    $Namespace = $Outlook.GetNamespace("mapi") 
    $Store = $namespace.Stores | ?{$_.FilePath -like $StoreFilePath} | %{$_} 
    $namespace.RemoveStore($Store.GetRootFolder()) 
    get-process | where { $_.Name -like "Outlook" }| kill 
} 

Remove-OutlookStore -StoreFilePath C:\Test\Test.pst 
関連する問題