我嘗試通過IronPython腳本創建目錄時發生C#項目中的奇怪問題。這是代碼:嘗試創建目錄時發生IOException(「文件或目錄已存在」)
targetTemplateDirectory = Path.Combine(Data, "Templates\\CheckedReports")
if not Directory.Exists(targetTemplateDirectory):
Directory.CreateDirectory(targetTemplateDirectory)
的問題是一個IOException
告訴我,這是不可能創建文件夾"H:\ProductName\Data\Templates\CheckedReports"
因爲文件或目錄具有相同名稱已經存在。
根據MSDN,當目錄已經存在時,方法Directory.CreateDirectory()
不會引發任何異常。
我知道名爲「CheckedReports
」的文件可能是此例外的原因,但客戶非常不可能手動創建該文件。除此之外,沒有包含單詞「CheckedReports
」的代碼行(除了提到的腳本之外)。此外,該應用程序由幾千名客戶使用,腳本在每臺機器上執行,只有一位客戶報告了此問題。
除了具有相同名稱的文件之外,是否有可能發生此異常?可能與權限,可移動媒體或網絡驅動器有關?
「但它是非常非常不可能」......但是,鑑於可用的信息,這是最可能的原因。如果存在以該名稱存在的文件,您不能只檢查(或讓客戶檢查)嗎? –
我希望我可以:)。該客戶使用的應用程序版本具有錯誤報告系統,該系統不允許任何個人或聯繫信息。我們在稍後的更新中改變了這一點。所以我們只收到一條包含堆棧跟蹤和機器ID的消息,沒有其他的。 –