亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Forms..NET 3.5 的 ShowDialog 和 Dispose 問題

Forms..NET 3.5 的 ShowDialog 和 Dispose 問題

C#
千巷貓影 2023-07-09 16:15:55
我正在修復現有 C# 項目中的一些錯誤。我使用 Visual Studio 2008 和 3.5 .NET Framework。該應用程序使用表單,并且應用程序的生命周期正常運行。我還沒有做任何改變,但是客戶最近開始經歷奇怪的行為。第一次使用該應用程序可以沒有問題,但是如果關閉一個表單并打開另一個表單,則該表單中的對象將被釋放。該代碼適用于 PDA,我們有一個用于掃描的事件處理程序。我認為這很奇怪,因為代碼沒有任何改變。也許這是一些框架錯誤?我試圖完全消除 Closing 事件上的事件處理程序,但發生了同樣的錯誤。改變表格的處理方式。表單創建 FormTEntreUbicaciones form = new FormTEntreUbicaciones(Movements.TREntreUbicaciones);                                    form.ShowDialog();                        form.Dispose();活動創建   if (Device.GetOSType2() == Device.OSType.WinMobile){                    hDcd = new DecodeHandle(DecodeDeviceCap.Exists | DecodeDeviceCap.Barcode);                    DecodeRequest reqType = (DecodeRequest)1 | DecodeRequest.PostRecurring;                    dcdEvent = new DecodeEvent(hDcd, reqType, this);                    dcdEvent.Scanned += new DecodeScanned(dcdEvent_Scanned);                }表格應該是打開的,并且其中的所有對象都不應被丟棄例外:System.ObjectDisposedException was unhandled  Message="ObjectDisposedException"  ObjectName=""  StackTrace:       at System.Windows.Forms.Control.InvokeHelper(Delegate method, Boolean fSynchronous, Object[] rgobjArgs)       at System.Windows.Forms.Control.Invoke(Delegate method)       at Datalogic.API.DecodeEvent.WaitForScan()有什么建議么?謝謝!
查看完整描述

1 回答

?
慕桂英546537

TA貢獻1848條經驗 獲得超10個贊

最后,我找到了解決方案。


在弄清楚出了什么問題之后,我發現 SCAN 事件一直保持活動狀態。


我添加了一個關閉覆蓋:


 this.Closing += MyClosedHandler;

MyClosedHandlerEvent 如下:



        //FIX MA 23.07.2019

        protected void MyClosedHandler(object sender, EventArgs e)

        {

            if (dcdEvent.IsListening)

            {

                dcdEvent.StopScanListener();

            }


            if (hDcd != null)

            {

                hDcd.Dispose();

            }

        }

檢測到 datalogic.api.dll 存在問題。使用的 PDA 是 Skorpio x3。


希望這會幫助別人!


查看完整回答
反對 回復 2023-07-09
  • 1 回答
  • 0 關注
  • 126 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號