Runtime ERROR - Urgent Support Required

Runtime ERROR - Urgent Support Required

Hi, We got a Runtime error as " MS VS C Runtime Library has detected a fatal error in ui.exe" Following are the steps we used for recreating the crash. 1. Developed the Recal application in Release mode 2. Integrated the Recal application with Intel ATOM SDK using the debug application ID. The crash occurs when ADP_Initialize() is executed. We also integrated Recal application made in release mode with ATOM SDK using the production ID and ran the app in our local machine. There was no crash encountered but there was an error message saying “Application error”. Regards, Praveen
9 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Hi,

Please find the error when I initialize the ATDS and run the app, I will get Applicatoin failed.

[Initialize:21966679-7392-2360-6702-104376163482:request]
Version=0.9;APILevel=1

[Initialize:21966679-7392-2360-6702-104376163482:response]
Status=0

[IsAuthorised:30644743-9886-4692-0871-942824350671:request]
Version=0.9;ApplicationUUID=f8a23168-85de-411d-9ef1-2684345bea12

[IsAuthorised:30644743-9886-4692-0871-942824350671:response]
Token=
b86f53c0-0f97-4ac4-b3ea-b56c7573bf9f
214123
bab7f0c8b84e19c3962d49f853a38a9277586ad33d1f7753cfa6fe35f303f31e

2009-10-05 15:53:42Z
2009-10-31 15:53:42Z

[Close request]

Regards,
Praveen

Please post your initialization code for review.

The following snippet contains the call to those routines on startup of the app.

AtomApplication* pTheApp;

Void OnInit ()

{

pTheApp = AtomAppStart();

if (NULL == pTheApp)

{

wxMessageBox( _("Application Error"),

_("Authentication Problem"),

wxOK | wxICON_INFORMATION, NULL);

exit(-1);

}

}

Praveen,

Here are a few questions which may lead you in the right direction.

What is the result of the ATOM SDK Initialization method?
Are you using ATOM SDK 0.9 or 0.91?
Does your application require Administrator privileges to run correctly?

Hi Brian,

Please find below the codes.. It might be of useful to help me to fix this issue.

First File:

ApplicationId AtomApplication::id(ADP_DEBUG_APPLICATIONID);

AtomApplication::AtomApplication(int dataIn) : Application(id)
{
// use the ApplicationId from directly above
this->dataLocal = dataIn; // set the local member variable dataLocal using the value of dataIn
};

void AtomApplication::PrintAuthorizationStatus()
{
//cout << "Application authorization status for " << (string) id << ": ";
//cout << Application::GetAuthorizationStatus() << endl;
};

int AtomApplication::GetData()
{
return dataLocal; //return the contents of the dataLocal member variable
};

AtomApplication* AtomAppStart (void)
{
AtomApplication *pApp;

// When new application objects are created, the framework calls the C runtime
// functions Intialize and Authorize
try {
pApp = new AtomApplication(2); // Create a new SampleApplication object and store
// 2 in the member variable

//pSampleComponent = new SampleComponent(3); // Create a new SampleApplication object and store
// 2 in the member variable
pApp->BeginEvent();

} catch (AdpException& e) {
//wcout << L"Caught exception in application: " << e << endl;
return (NULL);
}

return (pApp);
}

int AtomAppStop (AtomApplication *pApp)
{
if (pApp)
{
try {
pApp->EndEvent();
} catch (AdpException& e) {
//cout << "Caught exception in application: " << e;
return 1;
}

/*
* Free the Atom App, which results in freeing all components as well.
*/
delete pApp;
return 0;
}

return 1;
}

Second File:

#ifndef _ATOM_FW_H
#define _ATOM_FW_H

#include "adpcppf.h" // includes all framework headers

class AtomApplication: public Application { // this sample extends the Application class
private:
int dataLocal; // a member variable for storing data
static ApplicationId id; // the ApplicationId for this application, inherited from the Application class
public:
AtomApplication(int dataIn); // the constructor takes the custom variable data as a parameter
static void PrintAuthorizationStatus(); // method to print the authorization status for this application
int GetData(); // a method to get the custom information stored in SampleApplication::data
};

AtomApplication* AtomAppStart (void);
int AtomAppStop (AtomApplication *pApp);

#endif // _ATOM_FW_H

Praveen,

Earlier you said "Developed the Recal application in Release mode". Is Rectal the name of your application, before you added the ATOM SDK?

I ask because this may be a case where your Rectal application is utilizing a library (possibly the CRT runtime) which is not the correct version.

Does your Rectal application run without error if you remove all ATOM SDK references?

Hi Brian,

Recall is our application name. I have answered the questions you had asked. I am downloading the new sdk and will share the latest results.

1. What is the result of the ATOM SDK Initialization method?

Ans. When ATOM SDK is initialized without the ATDS server running, the error received is “The ADP runtime was unable to initialize”.

When ATOM SDK is initialized with the ATDS server running, the error received is “ The application was not authorized for use on this machine”.

2. Are you using ATOM SDK 0.9 or 0.91?

Ans. We are using ATOM SDK 0.9.

3. Does your application require Administrator privileges to run correctly?

Ans. Our application does not require administrator privileges to run correctly.

Praveen,

I have observed that if you have created a windows forms application, and you initialize the ATOM SDK on the primary thread you end up with the type of error you describe. The Windows Message Pump is being blocked, hence the application not responding.

The solution? Call your ATOM SDK methods in a new thread, separate from your primary UI (Forms) thread.

Leave a Comment

Please sign in to add a comment. Not a member? Join today