none
如何開啟just-in-time的模式 RRS feed

  • 問題

  • winxpp + vs2008(vb)

    各位大大

    最近遇到一個問題

    AP常常出現一個Arithmetic operation resulted in an overflow.的錯誤

    檢查了所有的變數,因該沒有會照成overflow的問題

    See the end of this message for details on invoking
    just-in-time (JIT) debugging instead of this dialog box.

    ************** Exception Text **************
    System.OverflowException: Arithmetic operation resulted in an overflow.
       at EZ_In_Home_Display.COM.Read_History()
       at EZ_In_Home_Display.H1.ReadTimer_Tick(Object sender, EventArgs e)
       at System.Windows.Forms.Timer.OnTick(EventArgs e)
       at System.Windows.Forms.Timer.TimerNativeWindow.WndProc(Message& m)
       at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

     

    所以想依照出現的訊息************** JIT Debugging **************
    To enable just-in-time (JIT) debugging, the .config file for this
    application or computer (machine.config) must have the
    jitDebugging value set in the system.windows.forms section.
    The application must also be compiled with debugging
    enabled.

    For example:

    <configuration>
        <system.windows.forms jitDebugging="true" />
    </configuration>

    想請問一下

    machine.config<==他在哪 找不到這個檔案

    machine.config<===要在哪裡設定jitDebugging="true"

    麻煩各位大大了

     

     

    2010年6月17日 上午 01:43

解答

  • 加在專案內的app.config也有相同效果,不一定要machine.config

    話說回來,直接把專案打開去偵錯不是更方便嗎?

    • 已標示為解答 動不了 2010年6月17日 上午 06:35
    2010年6月17日 上午 02:23
  • Hi!

    您可加在 application.exe.config 檔案中

    參考 HOW TO:啟用 Windows Form 的 Just-In-Time 偵錯

    若要啟用 Windows Form 的 Just-In-Time 偵錯

    1. machine.configapplication.exe.config 檔案中,將位於 system.windows.forms 區段的 jitDebugging 值設定為 true 。例如:

      <configuration>
       <system.windows.forms jitDebugging="true" />
      </configuration>
      

    歡迎參觀我的Blog.NET菜鳥自救會
    • 已標示為解答 動不了 2010年6月17日 上午 06:35
    2010年6月17日 上午 02:29
    版主

所有回覆

  • 加在專案內的app.config也有相同效果,不一定要machine.config

    話說回來,直接把專案打開去偵錯不是更方便嗎?

    • 已標示為解答 動不了 2010年6月17日 上午 06:35
    2010年6月17日 上午 02:23
  • Hi!

    您可加在 application.exe.config 檔案中

    參考 HOW TO:啟用 Windows Form 的 Just-In-Time 偵錯

    若要啟用 Windows Form 的 Just-In-Time 偵錯

    1. machine.configapplication.exe.config 檔案中,將位於 system.windows.forms 區段的 jitDebugging 值設定為 true 。例如:

      <configuration>
       <system.windows.forms jitDebugging="true" />
      </configuration>
      

    歡迎參觀我的Blog.NET菜鳥自救會
    • 已標示為解答 動不了 2010年6月17日 上午 06:35
    2010年6月17日 上午 02:29
    版主
  • TO 阿尼

    我這個軟體已經跑很久了

    最近給某個廠商測試大部分他們的電腦都沒有問題

    但是卻有特定某幾台電腦會出現這個錯誤

    導致我實在沒辦法抓問題(有在懷疑硬體上的不同照成的)

    才回想說要開啟JIT來偵錯

    所以我只要在app.config中直接加入<system.windows.forms jitDebugging="true" />就可以了是吧!

    app.config<==其實我懷疑他很久了

    就是不確定= =

    2010年6月17日 上午 02:32
  • TO 阿尼

    我這個軟體已經跑很久了

    最近給某個廠商測試大部分他們的電腦都沒有問題

    但是卻有特定某幾台電腦會出現這個錯誤

    導致我實在沒辦法抓問題(有在懷疑硬體上的不同照成的)

    才回想說要開啟JIT來偵錯

    所以我只要在app.config中直接加入<system.windows.forms jitDebugging="true" />就可以了是吧!

    app.config<==其實我懷疑他很久了

    就是不確定= =

    假如您要加在 machine.config,可以在 C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG 目錄下找到。
    歡迎參觀我的Blog.NET菜鳥自救會
    • 已標示為解答 動不了 2010年6月17日 上午 06:35
    • 已取消標示為解答 動不了 2010年6月17日 上午 06:36
    2010年6月17日 上午 02:36
    版主
  • 謝謝小歐大

    app.config既然一樣

    不知道大大是否有遇過寫出來的軟體大部分電腦都沒有問題

    卻在特定某個型號的電腦上就會出問題

    2010年6月17日 上午 02:41
  • 謝謝小歐大

    app.config既然一樣

    不知道大大是否有遇過寫出來的軟體大部分電腦都沒有問題

    卻在特定某個型號的電腦上就會出問題


    To: 動不了

         如果要分析這樣的問題, 可能需要你協助提供一些資料, 例如正常執行的環境 (CPU, RAM, OS Version), 與不能正常執行的環境 (CPU, RAM, OS Version)

        可能的話, 各提供個三四個有差異的規格.

        另一個建議是, 找出會出現此例外的變數與相關程式碼, 把不必要的Code拿掉, 寫一段簡潔的碼專門來測試.


    以下是簽名檔, 請勿沒事對號入座
    MSDN 文件庫很重要
    回應幫助你的人是一種禮貌, 良好的禮貌有助於激發大家對你問題回應的熱情
    進步的人會找尋自己程式中的缺點,半桶水則把自己程式的錯誤推到不相干事物的身上
    2010年6月17日 上午 03:03
    版主
  • 廠商那邊有原始碼嗎?

    如果沒有原始碼的話,我想應該還是沒辦法偵錯吧.......

    2010年6月17日 上午 03:07
  • Hi,

    錯誤訊息已經指出大概是在哪個部分發生問題,建議還是在相關的地方加上適當的錯誤處理,並且把錯誤發生時的錯誤訊息、時間等資料寫到log檔,之後來檢查,這樣會比較好。


    請注意討論區相關規則,良好的討論環境需要大家共同努力、遵守
    2010年6月17日 上午 04:09
    版主
  • 謝謝 bauann 大大

       at EZ_In_Home_Display.COM.Read_History()
       at EZ_In_Home_Display.H1.ReadTimer_Tick(Object sender, EventArgs e)<==這裡會去CALLCOM.Read_History

    我有特定去Read_History這個FUNCTION中做錯誤排除將CODE 用TRY包起來卻沒有錯誤產生

    阿尼大 程式是我寫的

    Bill Chung大

    目前有問題的機種是

    ASUS NB的竹子機系列(不知道型號剛推出來的新機種) CPU i5 m430 ROM:3G 作業系統 W7旗艦版 64位元(這種的測試兩台)

    沒問題的機種

    ASUS NB K系列 cpu i5 520m rom:4G 作業系統 W7旗艦版 64位元(測試兩台)

    ASUS J8系列 作業系統 W7旗艦版 32位元(這3台都是同事電腦)

    HP 商用電腦 DC5800 DX2310 2810 等  作業系統 W7旗艦版 32位元 或是XPP32位元(測試10幾台)

     

    有過一個測試 將整溢位的檢查取消FUNCTION Read_History 會正常跑完但是卻沒有紀錄(只有txt有資料,資料庫沒資料)

     

    2010年6月17日 上午 05:07
  • 看起來要來猜猜看, 可否改用Windows.System.Timer 來代替 Forms.Timer ?

    以下是簽名檔, 請勿沒事對號入座
    MSDN 文件庫很重要
    回應幫助你的人是一種禮貌, 良好的禮貌有助於激發大家對你問題回應的熱情
    進步的人會找尋自己程式中的缺點,半桶水則把自己程式的錯誤推到不相干事物的身上
    2010年6月17日 上午 05:30
    版主
  • 謝謝各位大大

    這個發問的答案已經確定了

    其他問題小弟我再慢慢測試

    如果有問題在上來跟大家請教

    謝謝大家給我那麼多的方向^^

    2010年6月17日 上午 06:35