一个奇怪的错误,Application->Title出现cannot evaluate function call的错误
我是多个客户端连接服务器端,服务器端收到客户端的请求后,到数据库里查询数据,然后返回给客户端,服务端用TServerSocket,方式为stNonBlocking,数据库连接用TADOConnection,查询用TADOQuery,数据库用的是sql server,建了一个100万的数据表,服务器从数据库里查询出来一个结果的时间是比较快,我用6个客户端同时连接服务器端,然后不断地发送6000个请求,在bcb环境下运行的时候,有时候会出现错误,在那个winmain函数里,我看了一下那个Application->Title,居然是cannot evaluate function call的提示,不知道这是什么意思?是什么引起的?我的winmain函数如下:
<--WinMain.cpp-->
//-------------------------------------------------------------------------
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
//判断系统是否已经在运行
HANDLE hMutex = CreateMutex( 0, false, Application->Title.c_str() );
if ( hMutex )
{
if ( GetLastError() == ERROR_ALREADY_EXISTS )
{
CloseHandle(hMutex);
Application->Terminate();
}
}
try
{
Application->Initialize();
Application->Title = "通信服务器";
Application->CreateForm(__classid(TDataSourceWindow), &DataSourceWindow);
Application->CreateForm(__classid(TMain), &Main);
Application->Run();
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
catch (...)
{
try
{
throw Exception("");
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
}
CloseHandle(hMutex);
return 0;
}
//-------------------------------------------------------------------------
其他的代码见:http://community.csdn.net/Expert/topic/5549/5549689.xml?temp=.4849665