On Thursday 14 February 2008 07:30:14 am Nate Lowrie wrote:
> This first part is more of a question than a concern since I don't use
> web update.  If you roll a dabo app up through py2exe and still have
> web update enabled in the preferences, will it fail to update?  As I
> understand it, the web update process works on the source files.  Does
> it just ignore the update if being run as a compiled executable?
>
> The reason I ask is because I am distributing some applications to
> customers in the form of a py2exe executable packaged into a Inno
> Installer installer.  However, I am still writing new features and
> fixing bugs and need to push updates out to the clients frequently.  I
> want to do a update through the web.  I guess I am asking for
> suggestions on how to process the update.  I am thinking of the
> following method:
>
> 1) Initial codebase compiled into py2exe, packaged into Inno Installer
> and given to customer.  They install it.  Codebase has a revision
> number hard coded in on compiling.
> 2) When the user runs the app, the hard coded revision number is
> stored into a preference.
> 3) I have an update, so I compile the updated code into py2exe and put
> the compiled exe into a folder on the server.
> 4) Update the CGI script with the new revision number for the latest
> version. 5) User runs app and app queries server.  Server checks their
> revision number versus the latest revision number.
> 6) If there is a later revision, the server transfers the new compiled
> files to the user.
> 7) Update is complete, user restarts and app should be updated.
>
> I think this is a little bit different than the way web update handles
> it because you can largely go through svn right?  If I have a compiled
> py2exe app and try to change some of the files, will I run into file
> access error because the program is running?  If so, how exactly would
> I go about handling the overwriting of files, especially the main .exe
> file?
>
> I understand that this probably will require some heavy server side
> scripting, but I would like to get something like this up and running.
>  Thoughts, comments, and constructive criticism, are most welcome.
>
> Cheers,
>
> Nate Lowrie

I have done similar things for my customers in the past.

1. Just distribute the exe for each update.
2. Used a sub-directory to place new code.
3. Used a Java tool that checked a server for updates.

The first one is easy to do but of course requires you to be involved.  That 
said, I have also found that my customer don't want to know how nor be 
involved in the update process.  So they want me to update them.  This works 
if there is a central server where everyone is running the same code.

In the VFP world (like the python world) the code can be part of the exe or a 
source code file ( py or pyc) file that is actually run.  So if there is an 
update all you do is place the py file into a special directory to be run.  
I.e have the app first check a sub-directory 'forms' to see if there is a py 
file with the correct name and run it instead of the complied code.  
Companies like AccountMate and Accpac do this in the VFP world.  It does have 
some advanages.  It allows minor changes to code for individual customers - 
is the most important in my mind.

And last, a java tool I once used was very cool.  WebRun or WebUpdate or 
Javastart??? I can't recall the real name at the moment.   Basicly, it 
provided a master java program that checked a URL for updates and then either 
downloaded it or not.  Then it just ran the program (exe or any executable).  
And of course it is cross platform.  It solves the issue where code is on 
individual computers by forcing each computer to check for the update.

But like I said my customers want me to handle updates and not involve them in 
anyway.

-- 
John Fabiani


_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://leafe.com/mailman/listinfo/dabo-users
Searchable Archives: http://leafe.com/archives/search/dabo-users
This message: http://leafe.com/archives/byMID/dabo-users/[EMAIL PROTECTED]

Reply via email to