我有一個控制檯程序,它使用Redemption DLL連接到Outlook 2016併發送一些電子郵件2用戶之間。Outlook彈出一個Windows安全窗口要求憑據使用時贖回dll
該計劃的目的是測試交流/展望。因此,在該計劃中,我們發送電子郵件,制定會議計劃......,然後保持循環,並一次又一次地做同樣的事情。
運行此程序時發現了一個奇怪的問題。有時,程序會彈出一個窗口並要求提供憑據。用戶的憑證是硬編碼的,顯然工作正常。如屏幕截圖所示,程序運行約476次,彈出窗口顯示在第477次循環。彈出窗口是隨機的,並不總是出現在第477圈。在某些機器上,彈出窗口顯示在第5個循環處。
如果我們使用Taskmgr終止控制檯程序,然後重新啓動控制檯程序,它將繼續運行並且不會彈出此憑據窗口。
任何人都看到過嗎?尤其是使用Redemption?如何解決這個問題?
感謝
這裏是一些代碼。我認爲,在彈出的情況發生,因爲
RedemptionSession.LogonHostedExchangeMailbox(Mailbox, Mailbox, Password);
但是,奇怪的是,爲什麼它是確定的第466次?即使我們必須讓登錄失敗,是否可以禁用此彈出窗口。
internal bool Login()
{
bool result = false;
if (RedemptionSession == null)
{
if (InitializeRedemption() == false)
{
string error = "Unable to initialize Redemption";
Log.Error(error);
TestResult = new TestResult(TestStatuses.Failure, error);
return result;
}
}
... check parameters....
LoginBegin = DateTime.Now;
try
{
RedemptionSession.LogonHostedExchangeMailbox(Mailbox, Mailbox, Password);
}
catch (System.Exception ex)
{
Log.Error(ex);
TestResult = new TestResult(TestStatuses.Failure, ex.Message);
return result;
}
LoginEnd = DateTime.Now;
result = RedemptionSession.LoggedOn;
return result;
}
「工具」是否有某種記錄來檢查此動作發生了什麼?登錄失敗了,導致錯誤,超時發生了嗎?另外它可能是來自Exchange的阻止該工具的策略策略。 – BastianW
請發佈您的代碼的相關片段。 –
嗨,德米特里,我添加了代碼,如果你需要更多的代碼,請讓我知道。或者,我們可以離線或通過電子郵件談談嗎? – urlreader