Automatic Updater for application

This forum is for eXpress++ general support.
Message
Author
Victorio
Posts: 621
Joined: Sun Jan 18, 2015 11:43 am
Location: Slovakia

Re: Automatic Updater for application

#21 Post by Victorio »

I found ListDLLs v3.2, this I mean is what I am searching.

listdlls infokat.exe >zoznamdll

and show this , not only DLL in application folder and also system DLLs, thats OK.

------------------------------------------------------------------------------
INFOKAT.exe pid: 12800
Command line: "C:\InfokatW\INFOKAT.exe"

Base Size Path
0x0000000000400000 0x13ae000 C:\InfokatW\INFOKAT.exe
0x0000000073cf0000 0x1f5000 C:\WINDOWS\SYSTEM32\ntdll.dll
0x0000000073610000 0x59000 C:\WINDOWS\System32\wow64.dll
0x0000000073580000 0x83000 C:\WINDOWS\System32\wow64win.dll
0x0000000077d20000 0xa000 C:\WINDOWS\System32\wow64cpu.dll
0x0000000000400000 0x13ae000 C:\InfokatW\INFOKAT.exe
0x0000000077d30000 0x1a3000 C:\WINDOWS\SysWOW64\ntdll.dll
0x0000000077400000 0xf0000 C:\WINDOWS\SysWOW64\KERNEL32.DLL
0x00000000762c0000 0x214000 C:\WINDOWS\SysWOW64\KERNELBASE.dll
0x0000000010000000 0x7c000 C:\InfokatW\XbZLib.dll
0x0000000060140000 0x270000 C:\InfokatW\XPPRT1.dll
0x0000000060680000 0x55000 C:\InfokatW\xppsys.dll
0x0000000077160000 0x7b000 C:\WINDOWS\SysWOW64\ADVAPI32.dll
0x00000000605b0000 0x8b000 C:\InfokatW\ASCOM10.dll
0x0000000077590000 0xbf000 C:\WINDOWS\SysWOW64\msvcrt.dll
0x0000000077070000 0x76000 C:\WINDOWS\SysWOW64\sechost.dll
0x0000000050090000 0xd1000 C:\InfokatW\ot4xb.dll
0x0000000077230000 0xbe000 C:\WINDOWS\SysWOW64\RPCRT4.dll
0x0000000076120000 0x1a0000 C:\WINDOWS\SysWOW64\USER32.dll
0x0000000075fb0000 0x18000 C:\WINDOWS\SysWOW64\win32u.dll
0x0000000075d10000 0xfa000 C:\WINDOWS\SysWOW64\CRYPT32.dll
0x0000000050050000 0x34000 C:\InfokatW\ASCOM10C.dll
0x0000000075bf0000 0x120000 C:\WINDOWS\SysWOW64\ucrtbase.dll
etc.

Tom, thanks for the guidance . :clap:

User avatar
rdonnay
Site Admin
Posts: 4729
Joined: Wed Jan 27, 2010 6:58 pm
Location: Boise, Idaho USA
Contact:

Re: Automatic Updater for application

#22 Post by rdonnay »

Before DllInfo() and Chk4Dll() were available, I used to determine what DLLs were loaded by running MSINFO32.EXE.

System Summary -> Software Environment -> Loaded Modules

I haven't used this in years, so I thought I would try it this morning.
It shows hundreds of dlls that are loaded, but doesn't list anything from Alaska Software even though I have an Xbase++ app running.
Apparently, Alaska is not including something needed by msinfo32.exe in their dlls any more.
The eXpress train is coming - and it has more cars.

Maxz
Posts: 49
Joined: Sun Jan 09, 2022 12:11 pm

Re: Automatic Updater for application

#23 Post by Maxz »

I am interested in understanding more about how to keep my application updated.
does anyone want to share some code from which to start?

I use chilkat and I would like to use an sFTP area as a repository on a NAS, for example QNAP

Victorio
Posts: 621
Joined: Sun Jan 18, 2015 11:43 am
Location: Slovakia

Re: Automatic Updater for application

#24 Post by Victorio »

At this moment I work on my updater, which does not work well.
My modified algorithm is simple , later I can send some code, but work like this :
main application has one txt file VERSION.TXT, in this is several rows about number and date version, and other parameters as database structure version etc.
on FTP I put installer created with Inno setup compiler and text file VERSION.TXT

when user on client side run program and has administrators rights , program download from FTP file VERSION.TXT (using WinSCP command line) and compare with
local stored VERSION.TXT (read txt rows from file and compare it.
If number of version on FTP is newer as local, , download from FTP installer (created with Inno) and runs it simple with Runshell , but immediately close application, to prevent
collision when replacing newer DLLs, EXEs,...
Thats all.
Also I upload LOG file to FTP with informations about client PC, date , time update, etc. and information, if update passed or no . This is information for me to know, who has problem
or who do not upgrading new version.

At this moment I do not know , why Innosetup installer not update all DLLs, , for example DCXML.DLL with newer one. Also I must implement some system to control, if all files from
upgrade was upgraded, to prevent problems if some of important files, databases, etc was not updated. For this I want create some datatabase, where will be list of all files in installation,
and program can compare all files date, time, size. Date can be problem, for example timezone or when file was downloading/uploading to/from FTP, before this I use WinSCP, which not change
date time of files.

Post Reply