最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

解決C# X64應(yīng)用程序中讀取WParam溢出的問(wèn)題

 更新時(shí)間:2013年04月11日 16:34:39   作者:  
C#應(yīng)用程序是AnyCPU的,在一段處理鼠標(biāo)滾輪WM_MOUSEWHEEL的代碼里碰到溢出的問(wèn)題OverflowException

在X86的環(huán)境下,

var wParam = (int)msg.WParam;

工作得很好。

在X64的環(huán)境下,

快速滾動(dòng)滾輪會(huì)出現(xiàn)msg.WParam 轉(zhuǎn)換為int的時(shí)候溢出,(WParam=4263510016)。

信息為:

未處理System.OverflowException
  Message=算術(shù)運(yùn)算導(dǎo)致溢出。
  Source=mscorlib
  StackTrace:
       在 System.IntPtr.op_Explicit(IntPtr value)
       在 TIM.MouseWheelHandler.MouseWheelMessageFilter.PreFilterMessage(Message& m) 位置。。。

查證WParam是IntPtr,MSDN說(shuō)

IntPtr 類型被設(shè)計(jì)成整數(shù),其大小適用于特定平臺(tái)。即是說(shuō),此類型的實(shí)例在 32 位硬件和操作系統(tǒng)中將是 32 位,在 64 位硬件和操作系統(tǒng)上將是 64 位。

所以,上面的代碼應(yīng)該為:

var wParam = (IntPtr.Size == 8) ? (int)((long)msg.WParam << 32 >> 32) : (int)msg.WParam;

測(cè)試通過(guò)。

相關(guān)文章

  • C#實(shí)現(xiàn)裝箱與拆箱操作簡(jiǎn)單實(shí)例

    C#實(shí)現(xiàn)裝箱與拆箱操作簡(jiǎn)單實(shí)例

    這篇文章主要介紹了C#實(shí)現(xiàn)裝箱與拆箱操作,對(duì)于新手理解裝箱與拆箱有一定的幫助,需要的朋友可以參考下
    2014-07-07
  • C#使用RabbitMq隊(duì)列(Sample,Work,Fanout,Direct等模式的簡(jiǎn)單使用)

    C#使用RabbitMq隊(duì)列(Sample,Work,Fanout,Direct等模式的簡(jiǎn)單使用)

    這篇文章主要介紹了C#使用RabbitMq隊(duì)列(Sample,Work,Fanout,Direct等模式的簡(jiǎn)單使用),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-10-10
  • C#中的DataTable查詢實(shí)戰(zhàn)教程

    C#中的DataTable查詢實(shí)戰(zhàn)教程

    這篇文章主要介紹了C#中的DataTable查詢實(shí)戰(zhàn)教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-01-01
  • C#使用NPOI操作Excel工具類的實(shí)現(xiàn)

    C#使用NPOI操作Excel工具類的實(shí)現(xiàn)

    NPOI是POI項(xiàng)目的.NET遷移版本,使用NPOI可以在沒(méi)有安裝Office或者相應(yīng)環(huán)境的機(jī)器上對(duì)Word或Excel文檔進(jìn)行讀寫(xiě)操作,下面我們就來(lái)學(xué)習(xí)一下如何使用NPOI編寫(xiě)操作Excel的工具類吧
    2023-11-11
  • 基于C#實(shí)現(xiàn)PDF文件合并工具

    基于C#實(shí)現(xiàn)PDF文件合并工具

    這篇文章主要為大家詳細(xì)介紹了如何基于C#實(shí)現(xiàn)一個(gè)簡(jiǎn)單的PDF文件合并工具,文中的示例代碼簡(jiǎn)潔易懂,有需要的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-01-01
  • C#調(diào)用pyd的方法

    C#調(diào)用pyd的方法

    這篇文章主要介紹了C#調(diào)用pyd的方法,幫助大家在項(xiàng)目中實(shí)現(xiàn)c#代碼與python代碼交互,在C#中調(diào)用python,也可以在python中調(diào)用C#.
    2020-11-11
  • C#簡(jiǎn)單寫(xiě)入xml文件的方法

    C#簡(jiǎn)單寫(xiě)入xml文件的方法

    這篇文章主要介紹了C#簡(jiǎn)單寫(xiě)入xml文件的方法,可實(shí)現(xiàn)C#針對(duì)XML文件簡(jiǎn)單寫(xiě)入的功能,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-07-07
  • C#實(shí)現(xiàn)讀取匿名對(duì)象屬性值的方法示例總結(jié)

    C#實(shí)現(xiàn)讀取匿名對(duì)象屬性值的方法示例總結(jié)

    這篇文章主要介紹了C#實(shí)現(xiàn)讀取匿名對(duì)象屬性值的方法,結(jié)合實(shí)例形式總結(jié)分析了C#通過(guò)反射、轉(zhuǎn)換等方法讀取匿名對(duì)象屬性值的相關(guān)操作技巧,需要的朋友可以參考下
    2020-03-03
  • 深入了解c# 迭代器和列舉器

    深入了解c# 迭代器和列舉器

    這篇文章主要介紹了c# 迭代器和列舉器的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)C#,感興趣的朋友可以了解下
    2020-08-08
  • C# ManualResetEvent使用方法詳解

    C# ManualResetEvent使用方法詳解

    這篇文章主要為大家詳細(xì)介紹了ManualResetEvent使用方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-05-05

最新評(píng)論

河南省| 兴化市| 通河县| 韶关市| 永昌县| 东阿县| 莆田市| 康定县| 巴楚县| 巴中市| 吴堡县| 腾冲县| 丹巴县| 响水县| 法库县| 肃北| 同仁县| 营口市| 桐梓县| 松滋市| 崇义县| 扎鲁特旗| 婺源县| 五河县| 香港 | 桐梓县| 屏东市| 屏山县| 洪湖市| 赤水市| 安塞县| 芦溪县| 东源县| 绥德县| 建德市| 平舆县| 于都县| 中方县| 泸溪县| 开平市| 永安市|