From: Alessandro Antonangeli on
>
> Solution: I am thinking about a App-loader, for copying the EXE and
> DLL's from network to local. But I want to create a dynamic app-loader.
> Has someone an example for this ?
>

This is a very basic, but working for coping newr files

--
Ciao
Alessandro

method CopyNewer() class app
....
NomiFile:=Directory(DaDove)
FOR i=1 UPTO ALen(NomiFile)
CopiaSePiuNuovo(DaDove,ADove,NomiFile[i][F_Name])
NEXT
....
SELF:run(ProgramExeName)

....
FUNCTION CopiaSePiuNuovo(DaDove,ADove,NomeFile)
LOCAL DaFile,AFile AS FileSpec
LOCAL DaData,AData AS STRING
DaFile:=FileSpec{DaDove+NomeFile}
IF !Upper(DaFile:Extension)=".LOG" //exclude log files
AFile:=FileSpec{ADove+NomeFile}
DaData:=DToS(DaFile:DateChanged)+AsString(DaFile:TimeChanged)
AData:=DToS(AFile:DateChanged)+AsString(AFile:TimeChanged)
IF DaData>AData
DaFile:Copy(ADove)
ENDIF
ENDIF


From: Paul D B on
Hi Dirk,

Dirk (Belgium) wrote:
> Paul and others
>
> The size of EXE is 2,5 MB
> There are 19 DLL's , together for about 50 MB

that's quite a lot, considering there are also the VO runtime DLL's.
How long does it take to launch te EXE? (I know that is not your problem, it
is the speed difference for opening the childwindow you are concerned about,
but I'm just curious <g> )

>
> EXE's and DLL are on the network.
Is it on a Gigabit network?

> If I create one big EXE with no DLL's, the problem is the same.
> DLL's are loaded with loadlibrary() on the start of the program, so
> before opening the childwindow.

Why don't you load them when you really need them? You could check the
presence of the DLL's at start(), but what is the use of having 19 DLL's if
you are loading them all at once?

>
> The speed of 9 seconds with local EXE and 14 seconds for network EXE
> is the mean of 5 times opening this childwindow.

I think you want to say that it is the _average_ time for opening the
childwindow, correct ?

The first opening of
> the childwindow is about 2 seconds slower, what I can understand. The
> following openings have all the same time.

I have tried to reproduce your problem here but:
- our network is quite fast
- we are using ADS
- I don't have any application of that size

So all my attempts to see if there is a difference between opening a
childwindow from a local EXE or a remote EXE have failed miserably <g>

But, I still think you need to redesign your application. Whether you can
explain or not the 5 sec difference, from the users' point of view it is way
too long. Imagine you could eliminate those 5 secs, then you still need 9
secs the childwindow. How do you explain the 9 seconds by the way? Is it the
data access? Filtering?



--
Paul


From: Geoff Schaller on
You aren't giving us anything reasonable to work with!

What you suggest is not commonly experienced although if you have 19
DLL's then your design is seriously wrong. You will be incurring your
own overhead through prototypes.

Turn everything into one giant exe.
Use UPX to compress it.
Test that

But who knows what your network is like, what kind of latency is in
there and so on. I hope it is a GB network and not 100MB, for instance.
Do you have a packet switch or a dumb hub?

There are definitely code design issues here but you need to help us.

Geoff



"Dirk (Belgium)" <dirk.dot.herijgers(a)pbprojects.dot.be> wrote in message
news:l5r%k.9766$So1.3927(a)newsfe01.ams2:

> Geoff Schaller wrote:
>
>
> > Dirk,
> >
> > Ok, then clearly the issue is the number of tables which are needed
> > to be opened for each tab (that is why we only ever build a tab on
> > its first show or select). The next problem is that subdatawindow and
> > databrowser are exceptionally slow when compared to bBrowser. A
> > factor of 10 times improvement is not out of the question.
> >
> > I consider any window which takes 3 seconds to open as taking too
> > long. Our benchmark is subsecond.
> >
> > Geoff
> >
> >
> >
>
>
> Geoff,
>
> You still not understand it. The databases are in both situations
> located at the server.
>
> I agree with you that 9 seconds are too long, BUT WHY is there a
> difference in time, between a local EXE and a network EXE ?
>
> Dirk
>
> --


__________ Information from ESET NOD32 Antivirus, version of virus
signature database 3681 (20081210) __________

The message was checked by ESET NOD32 Antivirus.

http://www.eset.com


From: Phil Mermod on
Hi Dirk,

In some customers' sites we had this kind of problem then we
applied the following changes and this helped. Hope this will
help yours too : http://support.microsoft.com/kb/296264

Cheers,

--
Phil Mermod
Crystal Reports Library for Visual Objects
http://www.pkl.ch/dev/


Dirk (Belgium) wrote:

> Hi All,
>
> Does someone has an explication for the following :
>
> I have a application with a small EXE and big DLL's written in
> VO.
>
> All data (DBF) are located on a server (XP Professional).
>
> Inside this programm, I have a big childwindow with several
> tabs a subdatawindows en subdatabrowsers...
>
> When opening this big childwindow, it takes about 14 seconds
> before the window is opened.
>
> When I place the EXE and DLL on the local machine, but the
> data still stay on the network, the big childwindow takes
> about 9 seconds for opening !!!
>
> I does not expect that the place of the exe take such a long
> time (!). The time measured is only the time to open this
> window, not the time to open the program, so EXE and DLL's are
> already fully loaded...
>
> Can someone give me an explanation, or some reason, or links
> to the internet with the same performance issue ???
>
>
> Thanks for all your replies,
>
> Dirk (Belgium)
From: Massimo Bighelli on

Geoff,

I always make one giant exe and I am happy with this approach
BUT I stopped using UPX because of same strange problem compressing exe
created with cctl6.man resource created.
What version of UPX and what parameters do you use?

TIA

Massimo Bighelli
ARCA Sistemi S.r.l.



"Geoff Schaller" <geoffx(a)softxwareobjectives.com.au> ha scritto nel
messaggio news:d3N%k.1034$cu.904(a)news-server.bigpond.net.au...
> You aren't giving us anything reasonable to work with!
>
> What you suggest is not commonly experienced although if you have 19 DLL's
> then your design is seriously wrong. You will be incurring your own
> overhead through prototypes.
>
> Turn everything into one giant exe.
> Use UPX to compress it.
> Test that
>
> But who knows what your network is like, what kind of latency is in there
> and so on. I hope it is a GB network and not 100MB, for instance. Do you
> have a packet switch or a dumb hub?
>
> There are definitely code design issues here but you need to help us.
>
> Geoff
>
>
>
> "Dirk (Belgium)" <dirk.dot.herijgers(a)pbprojects.dot.be> wrote in message
> news:l5r%k.9766$So1.3927(a)newsfe01.ams2:
>
>> Geoff Schaller wrote:
>>
>>
>> > Dirk,
>> >
>> > Ok, then clearly the issue is the number of tables which are needed
>> > to be opened for each tab (that is why we only ever build a tab on
>> > its first show or select). The next problem is that subdatawindow and
>> > databrowser are exceptionally slow when compared to bBrowser. A
>> > factor of 10 times improvement is not out of the question.
>> >
>> > I consider any window which takes 3 seconds to open as taking too
>> > long. Our benchmark is subsecond.
>> >
>> > Geoff
>> >
>> >
>> >
>>
>>
>> Geoff,
>>
>> You still not understand it. The databases are in both situations
>> located at the server.
>>
>> I agree with you that 9 seconds are too long, BUT WHY is there a
>> difference in time, between a local EXE and a network EXE ?
>>
>> Dirk
>>
>> --
>
>
> __________ Information from ESET NOD32 Antivirus, version of virus
> signature database 3681 (20081210) __________
>
> The message was checked by ESET NOD32 Antivirus.
>
> http://www.eset.com
>
>