none
取IMEI碼遇到的問題 RRS feed

所有回覆

  • 你用的應該是 String. . :: . Substring 方法 (Int32, Int32)

    在紙上用筆自己計算一下, 你傳入的兩個引數, 是否有其中一個的值是屬於例外狀況產生的條件

    returnValue = instance.Substring(startIndex, _
    length)

    startIndex
    型別:System. . :: . Int32
    這個執行個體中子字串之以零起始的起始字元位置。
    length
    型別:System. . :: . Int32
    子字串中的字元數。

    例外狀況
    例外狀況 條件
    ArgumentOutOfRangeException

    startIndex 加上 length 指示不在這個執行個體中的位置。

    -或-

    startIndexlength 小於零。

     備註

    startIndex 是以零起始的。

     


    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。
    2010年8月10日 下午 05:47
  • Hi 大學生,

    lgi.SerialNumber = lgi.SerialNumber.Substring(0, lgi.SerialNumber.IndexOf(Chr(0)))
    這行程式的目的是要把字串後面的空白字元﹝包含 Null Char﹞移除掉。
    你可以換成

    lgi.SerialNumber = lgi.SerialNumber.Trim()

    效果應該一樣。

    程式中 lineGetGeneralInfo() 會把相關的資料讀進 buffer 陣列變數。我建議你參考下面這篇文章。並試著在 debug mode 觀察 buffer 這個陣列的內容。

    http://msdn.microsoft.com/en-us/library/ee496938.aspx

    希望這些意見對你有幫助


    一天學一點,一點也不嫌少!
    2010年8月11日 下午 09:43
  • 謝謝Bill Chung,雷克斯羊

    謝謝兩位的指導

    to:Bill Chung

    恩..我按F11一行一行看了

     to:雷克斯羊

    那行是可以

     

     

    按F11一行一行看

    大概知道哪裏有問題

    lgi.SerialNumber = System.Text.Encoding.Unicode.GetString(buffer, serialoffset, serialsize)

    這行是傳入值

    但是...很奇怪的是

    wm6.5在這行可以傳入

    但在wm6.0在這行傳不進去

    所以在lgi.SerialNumber裡面是nothing

    導致在lgi.SerialNumber = lgi.SerialNumber.Substring(0, lgi.SerialNumber.IndexOf(Chr(0)))這行會引數出問題

    所以是wm6.0的問題!?還是什麼東東!?

    2010年8月12日 上午 08:24