我的C#VSTO Outlook 2010 AddIn將數百個MAPI文件夾異步添加到導入的pst文件。 (PST在Outlook foldertree存在)Outlook 2010 VSTO AddIn:UI隨意凍結,同時向PST異步添加文件夾
下面是一個例子:
Task.Factory.StartNew(() => {
... //get pstStore
var rootFolder = pstStore.GetRootFolder();
for (int i = 0; i < 500; i++)
{
var folder = rootFolder.Folders.Add("Test" + DateTime.Now.Ticks);
Thread.SpinWait(1000); //emulate work
Marshal.ReleaseComObject(folder);
}
Marshal.ReleaseComObject(rootFolder);
});
觀UI在rootFolder.Folders.Add(...)
隨機凍結2-3秒。有時在20之後,有時在50個添加文件夾之後。
任何幫助/提示將不勝感激。
+1寫這篇詳細的提示。我正在考慮使用C++/cli和IMAPIFolder :: CreateFolder(..)。如果失敗,你的回答將被接受,我會購買你的贖回圖書館。 – eWilli
我設法讓它使用C++/cli和擴展MAPI。 [見MSDN](https://msdn.microsoft.com/en-us/library/office/cc815501.aspx)。速度的差異是驚人的。對於不熟悉託管C++的人,我建議使用Redemption!接受的答案。 – eWilli