*-I'm new developer on Palm.
*-I written one more. I cant solve, and nobody answer me.
*-I'm sorry so that.
*-I want to add a record in database. But when i go to previous form, my
apps crashing.
This code calling record function.
case ctlSelectEvent:
if (eventP->data.ctlEnter.controlID ==
NewRecordButton)
{
WriteRecordData(); /***** This function adding
record ***/
handled=true;
break;
}
*-Everything is normally running.
*-My WriteRecordData function:
----------------------------
static void WriteRecordData(void)
{
CharPtr adPtr, soyadPtr;
Boolean DoSave = true;
Boolean isPrivate;
static Word RecAttr;
VoidHand newRecordHandle;
VoidPtr newRecordPtr;
adPtr = FldGetTextPtr((FieldPtr)GetObjectPtr(NewFirstNameField));
soyadPtr = FldGetTextPtr((FieldPtr)GetObjectPtr(NewLastNameField));
if ((!adPtr || adPtr[0] == '\0') &&
(!soyadPtr || soyadPtr[0] == '\0'))
{ DoSave = false; }
if (DoSave)
{
UInt adLen;
UInt soyadLen;
UInt WhereRec;
UInt newRecSize;
adLen = StrLen(adPtr) + 1;
soyadLen = StrLen(soyadPtr) + 1;
newRecSize=adLen+soyadLen;
newRecordHandle = DmNewHandle(RehberDB,newRecSize);
newRecordPtr = MemHandleLock(newRecordHandle);
DmWrite(RehberDB,0,adPtr,adLen);
DmWrite(RehberDB,adLen,soyadPtr,soyadLen);
WhereRec = DmFindSortPosition(RehberDB, newRecordPtr, 0,
(DmComparF *) ComparePackedPinFunc, 0);
DmAttachRecord(RehberDB,&WhereRec,(Handle)newRecordHandle,NULL);
MemHandleUnlock(newRecordHandle);
isPrivate =
CtlGetValue((ControlPtr)GetObjectPtr(NewHiddenCheckbox));
if (isPrivate)
RecAttr |= dmRecAttrSecret;
else
RecAttr &= ~dmRecAttrSecret;
DmSetRecordInfo (RehberDB, WhereRec, &RecAttr, NULL);
DmReleaseRecord(RehberDB, WhereRec, true);
}
}
*-This code running and exit from funciton.
*-When i press back button on form this code running...
if (eventP->data.ctlEnter.controlID == NewBackButton)
{
FrmGotoForm(MainForm);
handled=true;
}
*-This code running and the handle changing to Application handle.
*-My old form closing and loading previous form.
*-But when the apphandle is initial to my main form, application crashing.
static Boolean AppHandleEvent(EventPtr eventP)
{
UInt16 formId;
FormPtr frmP;
if (eventP->eType == frmLoadEvent)
{
// Load the form resource.
formId = eventP->data.frmLoad.formID;
frmP = FrmInitForm(formId); /**** This code crashing my
app *****/
FrmSetActiveForm(frmP);
*-Very interesting. My function is running true but My app crasing.
*-If my code dont work, apps is running true ;-)
If you can help me, I'm very glad..
Thank you..
--
For information on using the Palm Developer Forums, or to unsubscribe, please see
http://www.palmos.com/dev/tech/support/forums/