Results 1 to 2 of 2

Thread: MSVC++ Exception 0x80000003 In Different Language

  1. #1
    Junior Member
    Join Date
    Feb 2018
    Posts
    2

    MSVC++ Exception 0x80000003 In Different Language

    I'm currently using Stingray 11.1. I have some software that I've helped modify. We took the application from 32 to MFC to 64 bit MFC. It's been a pretty big project, but we are having this one really strange issue. My installer works on all of our computers here, the application works and doesn't have issues; however, when our customers try to install the program, the program immediately crashes. Thinking it was a fluke issue, we asked them to install it on a few of their PCs and all of them are having this issue. We've additionally tried running our PCs in the given language as well as install an operating system in the given language to test the issue to no avail.

    Scratching our heads we've tried a number of different things, but I think the real key is going to be with the Event Viewer information. We get the exception code 0x80000003 for module with path C:\Windows\System32\Kernelbase.dll and C:\Windows\System32\ntdll.dll. I have not been able to repeat these errors on our systems or development environments. Would anyone have any ideas, even to get the error to happen on our pcs so that we can move something forward?

    Please let me know if there is more information that is needed from you to help out too!

    Note 1

    I should also mention, we put AfxMessageBox's in the program and it's crashing around if(!ProcessShellCommand(cmdInfo)). We've created a basic MFC project that includes the same command and that program runs well on the target machine.

    Note 2

    The systems our client is using is a Windows 10 64 bit operating system and a Windows 7 64 bit operating system.

    Note 3

    I'm not necessarily sure if this is a stingray issue or not, just wanted to see if the problem has been presented before and if there was a possible solution. I tried running a regular MFC on the computer and it worked fine. Is there any dependencies involved with Stingray that the local system needs to install and I might have missed?

    Edit Note 4

    I'm using Visual Studio 2015, but building in 2008. And the language we're going to is Spanish from English
    Last edited by sjackson; 02-26-2018 at 10:18 AM.

  2. #2
    Junior Member
    Join Date
    Feb 2018
    Posts
    2
    This has definitely been the defining moment in my software engineering career thus far! So one suggestion I received from Stack Overflow was to setup a registry to get a crash dump. This has brought me really close to the heart of the problem. You excited me greatly by mentioning ProcessCommandLine()! I have been able to surround ProcessCommandLine() with an AfxMessageBox and it works up until PCL() but not after. If I race along I can get through more boxes, but no matter what it will definitely crash.

    I'm not entirely sure wehat the values are on their system that are being passed at this point. I could get a AMB to report that before the crash is one thing I could do to ship that along as well.

    The 32 bit version is currently still in VS6, and we haven't brought that to the newest versions just yet. That is our next task with this program; however, that version is still functioning.

    Currently, our Spanish customers are our only customers using this software. All of our computers (and I mean all) have successfully deployed this application.

    When we setup the environment we set it up as similar as possible to the customers hardware.

    I'll attach the call stack that we're having an issue with and I'm really wondering if I'm implementing SECFrameWnd wrong.

    Let me know if you need more than this for code:

    In Mainfrm.h:

    class CMainFrame : public SECFrameWnd
    {
    protected: // create from serialization only
    CMainFrame();
    DECLARE_DYNCREATE(CMainFrame)
    void SetPerisistance( BOOL bStore );

    // Attributes
    public:

    In Mainfrm.cpp:

    IMPLEMENT_DYNCREATE(CMainFrame, SECFrameWnd)

    BEGIN_MESSAGE_MAP(CMainFrame, SECFrameWnd)
    //{{AFX_MSG_MAP(CMainFrame)
    ON_WM_CREATE()
    ON_COMMAND(ID_FILE_OPEN_COMPORT, OnFileOpenComport)
    ON_UPDATE_COMMAND_UI(ID_FILE_OPEN_COMPORT, OnUpdateFileOpenComport)
    ON_WM_DESTROY()
    ON_WM_TIMER()
    ON_COMMAND(ID_SETUP_OPTIONS, OnSetupOptions)
    ON_WM_CLOSE()
    ON_WM_SIZE()
    ON_COMMAND(ID_FILE_DATABASE_IMPORTDATA, OnFileDatabaseImportData)
    ON_COMMAND(ID_FILE_DATABASE_QUERY, OnFileDatabaseQuery)
    ON_COMMAND(ID_FILE_DATABASE_MANAGE, OnFileDatabaseManage)
    ON_UPDATE_COMMAND_UI(ID_FILE_DATABASE_MANAGE, OnUpdateFileDatabaseManage)
    ON_COMMAND(ID_SETUP_DBOPTIONS, OnSetupDatabaseOptions)
    ON_UPDATE_COMMAND_UI(ID_FILE_DATABASE_QUERY, OnUpdateFileDatabaseQuery)
    ON_UPDATE_COMMAND_UI(ID_FILE_DATABASE_IMPORTDATA, OnUpdateFileDatabaseImportdata)
    ON_COMMAND(ID_FILE_DATABASE_COMPUTECBL, OnFileDatabaseComputeCBL)
    ON_UPDATE_COMMAND_UI(ID_FILE_DATABASE_COMPUTECBL, OnUpdateFileDatabaseComputeCBL)
    ON_COMMAND(ID_VIEW_DATABASE, OnViewDatabase)
    ON_UPDATE_COMMAND_UI(ID_VIEW_DATABASE, OnUpdateViewDatabase)
    ON_WM_SHOWWINDOW()
    ON_COMMAND(ID_FILE_COMMUNICATE_CONNECTLOCAL, OnFileCommunicateConnectLocal)
    ON_UPDATE_COMMAND_UI(ID_FILE_COMMUNICATE_CONNECTLO CAL, OnUpdateFileCommunicateConnectLocal)
    ON_COMMAND(ID_FILE_COMMUNICATE_CONNECTREMOTE, OnFileCommunicateConnectRemote)
    ON_UPDATE_COMMAND_UI(ID_FILE_COMMUNICATE_CONNECTRE MOTE, OnUpdateFileCommunicateConnectRemote)
    ON_COMMAND(ID_FILE_DATABASE_BACKUP, OnFileDatabaseBackup)
    ON_UPDATE_COMMAND_UI(ID_FILE_DATABASE_BACKUP, OnUpdateFileDatabaseBackup)
    ON_COMMAND(ID_FILE_DATABASE_RESTORE, OnFileDatabaseRestore)
    ON_UPDATE_COMMAND_UI(ID_FILE_DATABASE_RESTORE, OnUpdateFileDatabaseRestore)
    ON_COMMAND(ID_FILE_DATABASE_SELECT, OnFileDatabaseSelect)
    ON_UPDATE_COMMAND_UI(ID_FILE_DATABASE_SELECT, OnUpdateFileDatabaseSelect)
    ON_COMMAND(ID_FILE_DATABASE_REFRESH, OnFileDatabaseRefresh)
    ON_UPDATE_COMMAND_UI(ID_FILE_DATABASE_REFRESH, OnUpdateFileDatabaseRefresh)
    ON_COMMAND(ID_SETUP_PROXYSETUP, OnSetupProxySetup)
    ON_WM_SYSCOMMAND()
    ON_COMMAND(ID_SETUP_NOTIFICATION, OnSetupNotification)
    ON_COMMAND(ID_TASKBAR, OnTaskbar)
    ON_COMMAND(ID_SETUP_ALERT_LOG, OnSetupAlertLog)
    ON_COMMAND(ID_SCHEDULE_EVENT, OnScheduleEvent)
    //}}AFX_MSG_MAP
    ON_MESSAGE(WM_NEW_SITE_ADDED, OnRefreshDatabase)
    ON_MESSAGE(WM_SEC_TRAYICON_NOTIFY, OnTrayIconNotify)
    ON_MESSAGE(WM_LAUNCH_EXCEL_MACRO, OnLaunchExcelMacro)
    ON_COMMAND(ID_POPUP_OPEN, OnPopupOpen)
    ON_COMMAND(ID_POPUP_CLOSE, OnPopupClose)
    ON_COMMAND(ID_POPUP_ABOUT, OnPopupAbout)
    ON_MESSAGE(WM_LOG_SYSTEM_MESSAGE, OnAppendText)
    ON_MESSAGE(WM_UPDATE_CALL_TIME, OnUpdateCallTime)
    ON_MESSAGE(WM_PROGRESS_BAR_INIT, OnProgressBarInit)
    ON_MESSAGE(WM_PROGRESS_BAR_STEP, OnProgressBarStep)
    ON_MESSAGE(WM_PROGRESS_BAR_KILL, OnProgressBarKill)
    ON_MESSAGE(WM_FIRMWARE_DESCR, OnFirmwareDescr)
    ON_MESSAGE(WM_CALLHISTORY_DESCR, OnCallHistoryDescr)
    ON_MESSAGE(WM_STATUSBAR_TEXT, OnStatusBarTextUpdate)
    ON_MESSAGE(WM_TASKBAR, OnHandleTaskbar)
    //ON_REGISTERED_MESSAGE(gnCloseNotifyMsg, OnCloseNotify)
    END_MESSAGE_MAP()

    And the stack before the crash, ot1201as is pointing to result = CFrame::WindowProc(message, wParam, lPar); line 1940 in swinfrm.cpp version 11.1

    KERNELBASE.dll!DebugBreak()
    MiniCPF.exe!000000013fb66eae()
    MiniCPF.exe!000000013fb6731a()
    MiniCPF.exe!000000013f7fcb39()
    MiniCPF.exe!000000013f7fcc2b()
    MiniCPF.exe!000000013f7fcdd0()
    MiniCPF.exe!000000013f7e39c2()
    MiniCPF.exe!000000013f7e3e8e()
    mfc90.dll!CWnd::OnWndMsg(unsigned int message, unsigned __int64 wParam, __int64 lParam, __int64 * pResult) Line 2046
    mfc90.dll!CWnd::WindowProc(unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 1755
    ot1201as.dll!000000004c0eedf8()
    mfc90.dll!AfxCallWndProc(CWnd * pWnd, HWND__ * hWnd, unsigned int nMsg, unsigned __int64 wParam, __int64 lParam) Line 240
    mfc90.dll!AfxWndProc(HWND__ * hWnd, unsigned int nMsg, unsigned __int64 wParam, __int64 lParam) Line 402
    mfc90.dll!AfxWndProcBase(HWND__ * hWnd, unsigned int nMsg, unsigned __int64 wParam, __int64 lParam) Line 441
    user32.dll!UserCallWinProcCheckWow()
    user32.dll!DispatchMessageWorker()
    user32.dll!DialogBox2()
    user32.dll!InternalDialogBox()
    user32.dll!SoftModalMessageBox()
    user32.dll!MessageBoxWorker()
    user32.dll!MessageBoxTimeoutW()
    user32.dll!MessageBoxTimeoutA()
    user32.dll!MessageBoxA()
    mfc90.dll!AfxCtxMessageBoxA(HWND__ * hWnd, const char * lpText, const char * lpCaption, unsigned int uType) Line 448
    mfc90.dll!CWinApp::ShowAppMessageBox(CWinApp * pApp, const char * lpszPrompt, unsigned int nType, unsigned int nIDPrompt) Line 129
    mfc90.dll!AfxMessageBox(const char * lpszText, unsigned int nType, unsigned int nIDHelp) Line 148
    MiniCPF.exe!000000013f7eda6d()
    mfc90.dll!AfxWinMain(HINSTANCE__ * hInstance, HINSTANCE__ * hPrevInstance, char * lpCmdLine, int nCmdShow) Line 37
    MiniCPF.exe!000000013fb6778b()
    kernel32.dll!BaseThreadInitThunk()
    ntdll.dll!RtlUserThreadStart()

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •