Hi,
I am attempting to open (or create if necessary) a database using code
similar to that posted in the recipies section of palmOS.com. However,
after creating with no error, the open database call still returns NULL.
But then DmGetLastError returns 0, so I can't tell why it isn't opening...
(please see code below.)
If I stop and restart, the database cannot create (dmErrAlreadyExists) so it
is definitely creating correctly, it just won't open after it creates for
some reason...
Would anyone have any ideas?
thanks,
Meg
******code******
//database constants
#define dbType (UInt32) "data"
#define dbCreator (UInt32) "mws7"
#define dbCardNo (UInt16) 0
#define dbName "hassles"
DmOpenRef databaseRef; //holds reference to application's
database
/*--------------------------------------------------------------------------
-----------------------------------------------------------
Function: AppStart
Desccription: Start application, open databases and initialize as necessary
Parameters: none
Return: error code if necessary, otherwise 0
----------------------------------------------------------------------------
---------------------------------------------------------*/
static Err AppStart(void) {
Err error;
//initialize
FirstRunInitialize();
//attempt to open database
databaseRef=DmOpenDatabaseByTypeCreator(dbType, dbCreator,
dmModeReadWrite);
//if database couldn't be opened (deosn't yet exist)
if(!databaseRef) {
//create database
error = DmCreateDatabase(dbCardNo, dbName, dbCreator,dbType, false);
//if there was an error, return
if (error) {
//alert user
FrmCustomAlert(FatalAlert, "Database could not be created.", NULL,NULL);
//return error
return(error);
}//if (err)
//otherwise, open
databaseRef=DmOpenDatabaseByTypeCreator(dbType, dbCreator,
dmModeReadWrite);
//if still couldn't open
if(!databaseRef) {
//alert user
FrmCustomAlert(FatalAlert, "Database could not be opened.", NULL,NULL);
//find error
error=DmGetLastErr();
//return error
return(error);
}//if(!databaseRef)
}//if(!databaseRef)
//operation successful, no error code to return
return 0;
}//AppStart
--
For information on using the Palm Developer Forums, or to unsubscribe, please see
http://www.palmos.com/dev/support/forums/