本人小白,維護一個delphi專案,碰到一個問題a problem caused the problem to stop working correctly,然后應用就直接退出了,專案觸發的是呼叫了一個方法
begin
if sdFileName.Execute then
begin
lsFilename := sdFileName.FileName ;
dbg_inner_fk.ShowBands := True;
dbg_inner_fk.SaveToXLS(lsFilename, False);
dbg_inner_fk.ShowBands := False;
end;
uGlobalFunc.MsgDlg('檔案保存成功!', mtInformation);
end;
procedure TdxDBGrid.SaveToXLS(const AFileName : String; ASaveAll: Boolean);
begin
dxGrExpt.SaveToXLS(Self, AFileName, ASaveAll);
end;
是個偶而出現的問題,請大神幫忙,給小弟點方向。
uj5u.com熱心網友回復:
除錯出錯時把呼叫堆疊資訊貼下。你的問題點是你上面貼出來的那兩個函式里面嗎?uj5u.com熱心網友回復:
Thread Start: Thread ID: 8360. Process TopClientShell.exe (8756)Module Load: MSFTEDIT.dll. No Debug Info. Base Address: $60D40000. Process TopClientShell.exe (8756)
Module Load: WPDSHEXT.dll. No Debug Info. Base Address: $51CA0000. Process TopClientShell.exe (8756)
Module Load: SHMEDIA.dll. No Debug Info. Base Address: $5DD20000. Process TopClientShell.exe (8756)
Module Load: WMVCore.DLL. No Debug Info. Base Address: $51A30000. Process TopClientShell.exe (8756)
Module Load: WMASF.DLL. No Debug Info. Base Address: $5DCE0000. Process TopClientShell.exe (8756)
Thread Start: Thread ID: 9032. Process TopClientShell.exe (8756)
Thread Exit: Thread ID: 9032. Process TopClientShell.exe (8756)
Module Unload: MSFTEDIT.dll. Process TopClientShell.exe (8756)
Thread Start: Thread ID: 5080. Process TopClientShell.exe (8756)
Thread Exit: Thread ID: 8360. Process TopClientShell.exe (8756)
Module Unload: SHMEDIA.dll. Process TopClientShell.exe (8756)
Module Unload: WMVCore.DLL. Process TopClientShell.exe (8756)
Module Unload: WMASF.DLL. Process TopClientShell.exe (8756)
Module Unload: WPDSHEXT.dll. Process TopClientShell.exe (8756)
這是觸發【匯出】事件的除錯資訊,,無報錯,,專案已上線,,開發UAT都沒問題,,只是在用戶操作偶爾會出現問題,
uj5u.com熱心網友回復:
上面貼的是什么東西??除錯出錯時把呼叫堆疊資訊貼下,
uj5u.com熱心網友回復:
請教一下,怎么呼叫堆疊資訊,,另外,呼叫無報錯,自己測驗是好的,拿到用戶機器上出現的問題
uj5u.com熱心網友回復:
程式死掉用,重新啟動應用,一次或者多次,就能成功匯出檔案,不是每次都失敗
uj5u.com熱心網友回復:
程式加上日志輸出,拿到用戶機器上測驗,可以根據日志排查到底是哪行代碼出了問題。這種偶發的問題最不好查了,要有耐心,我個人估計是跟環境有關。
uj5u.com熱心網友回復:

測驗當然是要模擬用戶環境去測驗,把你的程式放到沒有安裝開發環境的機器上去試。
去下一個windbg加載你的應用時會列印出你的應用要使用的依賴庫,以及運行拋錯后會等待你除錯這個時候你可以查看它的呼叫堆疊資訊。
資訊如下圖所示
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/100390.html
上一篇:window XP下軟體處于登錄表單顯示狀態使用shutdown命令關機失敗
下一篇:資料庫連接
