Hi Minius
Thank you for the update on this and for reminding me that you have to send the .exe file if you want to let the customer know the version number etc has changed in the updated app's About Box or Splash Screen.
About the customer fields losing data by reverting to what is in the updated app you send them. Here are some scripts so that their field data is saved when their app quits and restored when it loads again.
Here are two scripts called FieldSave and FieldLoad. They assume the customer field data is stored in a local binary file called FieldData. The FieldData file are whatever you call it will be created once your customer runs and quits their app for the first time. A binary file is used in case the fields have multiple lines of text. In my example Card 1 has 3 fields and Card 2 has 2 fields.
Note there aren't yet any functions so you know the number of fields in advance - this will be in the next update to HN.
How To Use:-
(1) Place both the FieldSave and FieldLoad procedures in the MainCode section.
(2) Using the Menu Designer place the following call to FieldSave in the script of the File Quit option
(3) In the MainCode section - Startup - place a call to FieldLoad
FieldSave
Local fname,fvar,fdets,ftypes,fpaths,fnames,fextens
Local findex,txt
@+++ Open or Create Binary File +++
Put 'FieldData' into fname
FileGet(fname,fvar,fdets,ftypes,fpaths,fnames,fextens)
CreateBFile(fvar,findex)
@ ++ Card 1 ++
Put FieldCardFN(1,1) into txt
WriteBVariable(findex,txt)
Put FieldCardFN(1,2) into txt
WriteBVariable(findex,txt)
Put FieldCardFN(1,3) into txt
WriteBVariable(findex,txt)
@ ++ Card 2 ++
Put FieldCardFN(2,1) into txt
WriteBVariable(findex,txt)
Put FieldCardFN(2,2) into txt
WriteBVariable(findex,txt)
@ +++ Close file +++
CloseBFile(findex)
FieldLoad
Local fname,fvar,fdets,ftypes,fpaths,fnames,fextens
Local findex,txt
@+++ Open or Create Binary File +++
Put 'FieldData' into fname
FileGet(fname,fvar,fdets,ftypes,fpaths,fnames,fextens)
OpenAsBFile(fvar,findex)
@ ++ Card 1 +++
ReadBVariable(findex,txt)
FieldCardSet(1,1,txt)
ReadBVariable(findex,txt)
FieldCardSet(1,2,txt)
ReadBVariable(findex,txt)
FieldCardSet(1,3,txt)
@ ++ Card 2 +++
ReadBVariable(findex,txt)
FieldCardSet(2,1,txt)
ReadBVariable(findex,txt)
FieldCardSet(2,2,txt)
@+++ Close File
CloseBFile(findex)
MenuDesigner - Field - Quit script
Call FieldSave
Quit
MainCode - Startup
Call FieldLoad
The binary files are explained in the Language Reference PDF and built in Help.
Malkom