Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Chris Miller on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Deployed Application can't find rtl60.bpl 1

Status
Not open for further replies.

delphiman

Programmer
Dec 13, 2001
422
ZA
At last I am able to deploy a D6 Application, it's DataBase and the BDE (using Inno 3.07) with everything going into the right places.

But when I try to run the .EXE on the Target System it can't find rtl60.bpl

Can someone PUHLEASE throw some light on this?

I might mention that I am using W2K professional along with D6 Enterprise and I have rtl60.bpl and a string of vcl*.bpl
files (which appear to be the result of Update 3 to my D6 Enterprise) living in c:\WINNT\system32 . And is where I would imagine they should also be on the Target System.

And so I have taken the precaution of deploying all these files to c:\WINNT\system 32 on the Target System. So that if that directory is present they will be installed there - failing which (as in the case of W98 - where there is no WINNT folder) the folder will be created and these .dll files will be installed there.

The mysterious thing is, even if I relocate all these files (along with everything else on my own system - so as to emulate a "virgin" system) - everything installs correctly. And the Application runs.

I have even suspected that rtl60.bpl is (somehow sneakily) hidden somewhere else on my H/D and being referenced on my system. But there is no other.

 
Is the failing target system Windows 98 ?

Your posting implies that you are creating a folder called C:\WINNT\SYSTEM32 on the target system if it doesn't exist.

However if the target system is Windows 98 then shouldn't you be using C:\WINDOWS\SYSTEM ?

Andrew
 
>Your posting implies that you are creating a folder called >C:\WINNT\SYSTEM32 on the target system if it doesn't >exist.

Exactly! Because I want my deployment CD-ROM to be able to install to any OS and run - without hassle for the user.

>However if the target system is Windows 98 then shouldn't >you be using C:\WINDOWS\SYSTEM ?

Perhaps. But on W98 there is a \SYSTEM32 ... but it is a subdirectory of c:\WINDOWS.

But it doesn't work if I place everything there either. :-(

I am hoping to circumvent MS's propensity to change from c:\WINDOWS (as in W95 and W98) followed by c:\WINNT(as in W2K, WMill and W-XP) and (perhaps) c:\CURTAINS tomorrow. :)



 
W95, W98, W-XP aren't going to look in a folder called c:\WINNT\SYSTEM32 for DLLs (and BPLs).

Your installation program generator should have some pseudo variable which will represent the folder where DLLs should be installed. Are you using this pseudo variable which will be replaced by the appropriate folder name used by the target operating system for DLLs ?

In the installation generator that I use this variable is called <WINSYSDIR>. At run time this is replaced by c:\WINDOWS\SYSTEM32 for Windows XP.

I don't know if this helps or not?

Andrew


 
towerbase

You are a genius Mate!!
Please tell me what I do with the following script to acheive what you say.....

Source: &quot;C:\WINNT\System32\rtl60.bpl&quot;; DestDir: &quot;C:\WINNT\System32&quot;; Flags: ignoreversion
 
Sorry, I've never used Inno. Maybe some of the folk on this forum that recommended it can help?

Andrew
 
Andrew!
Perhaps you will lead me to it if you can explain a little how you deploy your Applications. I might well be able to interpret that into how to apply your idea with
Inno 3.07.

I might mention that InstallSheild Express (Limited Edition) which came with my D6 also leaves my Application looking for rtl60_bpl on the Target system. Which leaves me to suspect that IS-Express was not engineered to collect (deploy) these DLL's. Which only came along later when Borland came forward with their UpDates to D6 after all.

One of the reasons why I prefer Inno 3.0 - which you can download for free from - because one has more control.
 
I think I have found the answer at which is ....

Installing Different Files Depending on Windows Version
That can be done via MinVersion and/or OnlyBelowVersion parameters on an entry. See the Common Parameters topic in the documentation for details.
Here is a simple example of how to install one file on NT platforms (Windows NT/2000/XP) and another file on non-NT platforms (Windows 95/98/Me):

[Files]
Source: &quot;{app}\WinNT2000XP.exe&quot;; DestDir: &quot;{app}&quot;; MinVersion: 0, 1
Source: &quot;{app}\Win9598Me.exe&quot;; DestDir: &quot;{app}&quot;; MinVersion: 1, 0

&quot;0&quot; means never install; &quot;1&quot; means install on any version (i.e. version 1.0 or later).

Note: The above technique isn't limited to the [Files] section; MinVersion and OnlyBelowVersion can be used in most sections.
 
Spoke too soon ....

I am not concerned with .EXE files. As in ..
Source: &quot;{app}\WinNT2000XP.exe&quot;; DestDir: &quot;{app}&quot;; MinVersion: 0, 1

I need Setup to deploy to the appropriate folder depending upon the OS in use in the Target System. And this doesn't leave me any the wiser.
 
I use GP-Install. This is a freeware installation tool from
It is limited but does what I want (and it's free). It is a bit weak when it comes to the BDE but my application doesn't use the BDE.

Andrew
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top