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 SkipVought on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Package & Deployment Wizard confusion

Status
Not open for further replies.

tedsmith

Programmer
Nov 23, 2000
1,762
0
0
AU
I am confused with how to make an installation install in a new folder other than one in the Program files and how to include a font and jpg graphics in the installation package so the user doesn't have to separately install them.

For example how do you change the installation script to get a font to install - or is something else needed?
 
>include a font

Ted,
Just a quick check (particularly since I'm guessing this is one of your commercial applications) - this is a redistributable font, yes? Be aware that almost every one supplied by Microsoft through whatever OS or application is NOT redistributable.
 
>I am confused with how to make an installation install in a new folder other than one in the Program files...

Okay, I recently (mis)advised someone that they could use the PDW to change the installation folder from Program Files to whatever folder they wanted, which you can do. However, ...

[centered][!]WARNING! WARNING! WARNING![/!][/centered]

you have to modify the Setup project to recognize you new macro to do so. I would suggest that you once you find it at or near...

C:\Program Files\Microsoft Visual Studio\VB98\Wizards\PDWizard\Setup1\

(if you installed it in default location)

That you copy this to a working folder before you even open the project. The code contained therein is not for the faint of heart. Then once you have decided upon which folder you want to install to (may I suggest a new folder name for you? Other Programs\program name) you need to compile the project and replace the Setup1.ext in the PDWizard folder ([!]make copy first!!!![/!]). Then run the PDW as normal and use your macro when it comes to the path installation screen.

Or after compiling the new Setup1.exe you use the PDW as normal, open the setup.lst file and change the appropriate place from $(Program Files) to your macro $(Other Programs). Then replace the Setup.exe with your Setup1.exe.

Either way your next step is to test, test, test.

(/end warning)


Good Luck

 
One font that may be questionable is "Arial Narrow"
It used to be included in the Windows OS but is not in any of the modern XPs I have encountered.
I have an old app. that needs this and every time a user uses it in XP they have to manually install the old Narrow font before they can run the app.
As Microsoft no longer supply this I assumed it was fair game to supply it with the app. Is this the case?

It would be cleaner to have the package automatically do this.

I have a customer who is thinking of using various sizes of Helvetica because they are associated with the printing industry and are prepared to pay any licence fees. I do not intend to pirate any fonts that are purchasable.

I have also made a special font containing some special symbols that will be my property.
 
As Microsoft no longer supply this I assumed it was fair game to supply it with the app. Is this the case?
I would assume the opposite. Also I have Ariel Narrow on my XP box without any extra font installs required...

HarleyQuinn
---------------------------------
Carter, hand me my thinking grenades!

You can hang outside in the sun all day tossing a ball around, or you can sit at your computer and do something that matters. - Eric Cartman

Get the most out of Tek-Tips, read FAQ222-2244: How to get the best answers before posting.

 

Thanks vb5prgrmr. Shouldn't you change your name to vb6prgrmr by now?

Sounds like it might be easier to write my own installation.exe wizard!

Anybody done that?
Could I run it using DLLS on the installation disk before they are copied to the Systems folder?

Then I could have the installation wait screens a lot fancier with dancing girls etc.!

 
strongm - [smile]

ted - If you want to write your own you can get it to do pretty much anything you want (providing VB is capable of achieving want you, dancing girls I think it can do [wink]), so you can make it as fancy or as basic as you like.

HarleyQuinn
---------------------------------
Carter, hand me my thinking grenades!

You can hang outside in the sun all day tossing a ball around, or you can sit at your computer and do something that matters. - Eric Cartman

Get the most out of Tek-Tips, read FAQ222-2244: How to get the best answers before posting.

 
>Thanks vb5prgrmr. Shouldn't you change your name to vb6prgrmr by now?

Actually I started off school when 4 was at the end of its life (kinda sortof) as 5 was released when I ready for the programming classes. So in short, I kind of date myself this way (than and I have had an email address with the same handle just as nearly as long).

As to customizing the setup program. Yes, I have done that but unfortuatly I no longer work for that company (set my custom = their property).

However, I can take you through the steps that I used to understand the project.

#1)I read through the project and its comments and formatted the code for readability while I was doing so (no changes).
#2)Looked up the API calls that I did not understand.
#3)Used test projects on some parts of the code (like the gradient background)
#4)Added my own comments once I figured out how a piece worked so when I went back to read, the explanations were in my own words so it was easier to remember.
#5)Then, once I was finally familiar with everything that I needed to be (MS thankfully left comments as to where to add code), I started the modifications.
#6)To test I followed the instructions in form_load of the frmSetup1 file and that way I was able to walk through the project.


While you are in there, in basCommon I would suggest that you replace the GetDiskFreeSpace with the GetDiskFreeSpaceEx API.

Good Luck (Your gonna need it)

 
Having your install process create a new folder (and perhaps copy things into it) is usually easier if you use something newer than the PDWizard.

Visual Studio Installer 1.1 can still be downloaded from Microsoft if you have VB6, and it creates more flexible (and fully supported in Vista and beyond) MSI packages. However you will typically find that your package must also set permissions on the new folder if users don't all run as part of the administrators group.

You can post-process the MSI database created by VSI 1.1 to do this, but you can't do it within the IDE. Microsoft has not updated VSI for VB6 users to incorporate changes in Windows Installer since about 2000.

Later versions of Visual Studio offer a bit more control over MSI packages, but there are also a number of 3rd party packaers that support Installer packaging. Some are free or have entry-level freeware editions.

Look for Wix, Advanced Installer, and MakeMSI.

Windows Installer MSIs can also install fonts, which is how Office, etc. do the job.
 
Writing your own installer from scratch would certainly be a challenge!

The problem there is that you can never take as many scenarios into account as Microsoft (or other installer writers) have done - will the user install to a network, install off a USB stick, have admin rights, install using Terminal Services, be running a foreign language version of Windows, have access to the system32 folder - before you even get to doing things differently depending on the version of Windows.

The easiest way might be to use a rudimentary installer as mentioned above to get your application installed correctly and then trigger a 'first-time run' bit of code to move things around when the user runs your app for the first time.

- Andy
___________________________________________________________________
If you think nobody cares you're alive, try missing a couple of mortgage payments
 
Strange. Arial Narrow was definitely not on some XP computers I encountered about a year ago.
If it is included then I don't have to worry about installing it!

Are you saying that if any font is "non-redistributable," that it is not possible to include it in the old PDW automatic installation process or is it only a matter of legality?

If I purchase another font licence, are you also saying the the PDW will not automatically install it anyway?
 
Arial Narrow isn't shipped with XP (according to Microsoft) - having said that I've got it on mine and I don't know where it came from, I get the feeling it's part of Office.


From a legal standpoint you can't include it in your installation but to he honest I'd be tempted to include it if the alternative is that your app won't work without it.

- Andy
___________________________________________________________________
If you think nobody cares you're alive, try missing a couple of mortgage payments
 
AndyGroom said:
From a legal standpoint you can't include it in your installation but to he honest I'd be tempted to include it if the alternative is that your app won't work without it.
Unless you buy a licence, then you can. I'd also be very wary about purposefully breaking licencing laws. It's not very professional, alot of companies are incredibly strict about having licences now and it's against the law. Might sound like nit-picking (and admittedly, it's very unlikely you'd get caught) but it is still an infringement (which I wouldn't advocate, especially on a public forum where people might decide it's OK to just haphazrdly inlcude things in their installs that aren't licenced). Sorry for a bit of a rant, I just felt it was bad judgement to advise someone to break the law.

Hope this helps



HarleyQuinn
---------------------------------
Carter, hand me my thinking grenades!

You can hang outside in the sun all day tossing a ball around, or you can sit at your computer and do something that matters. - Eric Cartman

Get the most out of Tek-Tips, read FAQ222-2244: How to get the best answers before posting.

 
HarleyQuinn said:
I just felt it was bad judgement to advise someone to break the law

I agree (although being tempted to break the law isn't exactly the same as advising someone to break the law), but to get back to the original problem I guess the only answer would be to update the app to check whether Arial Narrow is installed and, if not, tell the user to install it at $30 a pop from the link that strongm posted, or buy some other app like Microsoft Greetings 99 for $3 off eBay and they'd get a whole heap of fonts including Arial Narrow with it.

- Andy
___________________________________________________________________
If you think nobody cares you're alive, try missing a couple of mortgage payments
 
Andy, just to clarify. It wasn't a dig at you, it's just people seeing any notion of this sort of thing on a public forum might take it to be OK, it also doesn't look particularly good for the professionalism of the site.

HarleyQuinn
---------------------------------
Carter, hand me my thinking grenades!

You can hang outside in the sun all day tossing a ball around, or you can sit at your computer and do something that matters. - Eric Cartman

Get the most out of Tek-Tips, read FAQ222-2244: How to get the best answers before posting.

 
I never suggested that I would break any laws nor did I want to find out how to.

So please let us get back to my original question and ignore the bit about legality?
I didn't want to even discuss the legality of it.
My customers will gladly pay the extra if they have to.

What I wanted to know was if PDW could automatically install a font and how to do it.

The matter of non-redistributable or not is what now has me confused.

Quote: "Once you have a redistributable font I believe .."
How do you define non-redistributable?

Is there something in a particular font that is "non-redistributable" that makes it impossible to automatically install as strongm suggests?

Or is it purely a matter of ethics or legality so that physically redistributable and non-redistributable fonts are the same?
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top