我運行相同的二進制檔案,它適用于舊版本的 Windows 11(以及早期版本的 Windows),但它在 22621.525 啟動期間崩潰。我查看了代碼 (C#) 以及將某些內容設定為 Double.NaN 的原因。將其設定為實際值會使代碼作業。
呼叫堆疊看起來很無辜。Main() -> MainForm() -> InitializeComponent() -> MyControl() 所以它似乎沒有進行任何遞回。
新版本有什么變化?
uj5u.com熱心網友回復:
如果您運行較舊的代碼,就會發生這種情況。該問題發生在 FPU 中,可能是由較舊的程式或庫引起的。它出現在 Windows 11 (22621.525) 中但未出現在早期版本中可能與 Windows 作業方式的變化有關。
無論如何,您可以通過添加強制重置 PFU 來解決問題
try
{
throw new Exception("Please ignore, resetting FPU");
}
catch {}
在呼叫導致例外的函式之前。如果您需要從多個地方執行此操作,則將其包裝到一個函式中可能是個好主意。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/518630.html
標籤:视窗
上一篇:如何使用directx在Windows上的“我的視窗”上顯示內容
下一篇:Double.NaN在Windows11中導致System.StackOverflowException(22621.525)