VNET_Tutorial_2_en -- dll is not found ?

Ruslan Zasukhin sunshine at public.kherson.ua
Tue Jul 4 01:01:27 CDT 2006


On 7/3/06 5:12 PM, "Joakim Schramm" <joakim at astrocalc.com> wrote:

Hi Joakim,

>> Note, that in your FINAL release, you should prefer put all
>> Valentina and ICU dlls into EXE folder, so they will not
>> conflict to other dlls.
>> 
> 
> I don't totally agree about this, System32 is the folder to put dll's in
> used by several instances of the system and a databse product I think is a
> strong candidate for being used by more then one program.
> 
> I personally have 5 programs that will use Valentina and putting the dlls in
> each of the programs exe dir is a waste of users disc resurses I cannot
> defend, expecially with the big size forprint these dll's have.

RIGHT. In your case it is wise put dlls into some central single location,
Then specify PATH to them...
 
> A proper setup program should install only newer versions of dll's according
> to file version label, and new versions should always be backward compatible
> as long as same name is used. I suppose this is the true case with Valentine
> dll's?

Not sure...I hard believe into such games...

If you look on MS own dlls they just use version to be plugged into name of
DLL: e.g. MFC42.dll
 
> I have been thinking of this myself as I am approaching release time, wether
> to put them in System32 OR a subdir of System32... The COM docs "Deployment
> of your application" say as second suggestion:
 
> 2) Valentina folder is located in the system area.

> This way is the same as you have it now during development. VComponents folder
> is located in the central place of OS where any application can find it. This
> way can be choosed if you develop several small applications that all use
> Valentina. Using this way you have VComponents folder only in one place on a
> user computer. 

yes
 
> Is this your recommendation to put the whole folder in System32 rather then
> just the files? I would like to hear who others using com dll's deal with
> this? It would be good to have an "offical standard" to avoid putting dll's
> "all over the place"...

But you are NOT forced drop dlls into system32.

You can put them into

    \Program Files\MyCompanyName\VComponents

And provide PATH to this folder.


> I am aware of the so called "dll hell", but I personally think this is more
> a problem with badly written installers then dll's and system32 it self.

Both in fact. In prev letter developer have discover such hell:
    Valentina uses icu30.dll
    Crystal Report uses dll with the same names icu30.dll

But they differ somehow...oops - problem...

> The windows regestry have a reference count of installed and uninstalled
> programs incl. dll's so if setup is don't correctly there is no "hell".

In Visual 2005 Microsoft have introduce new technology based on Manifests.

But in V4MD win, V4REV win, VCOM ... We have refuse to use Visual 2005
    and we still use 2003

Reason -- they have made more complex steps as for us, so for you...

In VNET FRMW 2.0 -- we have use Visual 2005

And Valentina Studio + Vserver -- our own apps we use Visual 2005.
    here no many win, because we put our dlls into app.exe folder,
    so in any case they not conflict to any other installations.

But I think in nearest 1-2 years this Manifest technology will simplify
things on Windows side...

On MacOS we already have similar thing -- exectuable_path...


-- 
Best regards,

Ruslan Zasukhin
VP Engineering and New Technology
Paradigma Software, Inc

Valentina - Joining Worlds of Information
http://www.paradigmasoft.com

[I feel the need: the need for speed]




More information about the Valentina mailing list