有關VB程式中釋放串列埠資源的問題

時間 2025-03-11 23:30:17

1樓:網友

private sub form_queryunload(cancel as integer, unloadmode as integer)

if = true then = falseend sub

在快速關閉過程中關閉串列埠就可以了。

要麼就是在開啟串列埠的地方判斷如果出錯就直接關閉串列埠再開啟。

莫非你程式中用了 doevents ?

如果這樣,你試試在快速結束過程裡面加unload me吧。

修改1:不建議用doevents,建議改用定時器來實現延時。

詳情請看另一貼的回覆。

要麼在快速結束裡面新增一行receive = 1,但receive 必須是全域性變數。

vb.net中,串列埠接收數大量資料時如果執行serialport.close動作,程式會卡死在這裡

2樓:網友

對同乙個串列埠的操作應該放在單個執行緒裡,你的程式應該將串列埠接收和串列埠關閉的執行都放在乙個執行緒裡進行,這樣在接收資料的間隙就可以正常執行close動作。而不會造成兩個執行緒都在操作串列埠。

vb中在串列埠程式的乙個問題

3樓:網友

不會清空接受區的資料,留著最後乙個位元組的,觸發的時候才接收的。

4樓:網友

理論上接收緩衝區不存在任何位元組,實際也是如此。

vb寫了個小程式,通過串列埠控制微控制器,總是出現問題

5樓:匿名使用者

可能要釋放cpu的時間片,試試用doevents代替msgbox(i),最好再sleep一下。

另外你這種設計是主動查詢串列埠,很耗cpu的,為什麼不用串列埠事件通知來實現呢(就像微控制器中查詢與中斷的區別)。

6樓:網友

msgbox,你這不就是彈出對話方塊,相當於暫停程式了嗎。

51串列埠通訊的實驗,程式沒問題,但用串列埠除錯助手發資料,發後就一直髮個不停,程式如下~求高手指點迷津!

7樓:做而論道

當收到,乙個位元組後,進入中斷,使得 flag=1;;

flag=1; ,將導致主函式傳送乙個位元組;

同時 flag=0;

並且還關閉了串列埠中斷,使得 flag 不會再變成1。

那麼,以後的就不會再傳送了。

另外,可以和下面的交流一下:

8樓:匿名使用者

你是不是 改改 串列埠除錯助手 資料顯示模式,文字 改 為二進位 試試看。

關於vb串列埠的問題。

9樓:網友

用文字傳送方式,不過一次不能傳很多的,

VB程式題,需要算的過程,高中會考VB程式中的題 !要詳細的解答過程。

4 執行下列程式,會列印出 50 80 60 40 20 x 5 y 10 do until x 0 print x y for i 1 to 5 y 20 next i x x 1 loop x 5時,執行print x y輸出50 x 4時,執行print x y輸出80 x 3時,執行prin...

在vb窗體中畫圓顯示不出來,vb編寫的程式在窗體上顯示不全怎麼辦

這是因為你把 放在了form load中的緣故,執行form load以後是要重繪視窗的,你話的圓被覆蓋掉了。解決方法是把 放在form的paint事件中private sub form paint fillstyle 0 x scaleleft scalewidth 2y scaletop sca...

一道有關於Cls的VB題,關於vb中cls的

private sub form click static a as integer 定義a為靜態變數 static b as integer 同上 cls 清除窗體上顯示的內容 b 1 每次執行的時候都先把b賦值為1,所以把b定義為靜態變數看不出效果的 b b 5 每次都是6 a 5 a 執行第一...