|
-
Dec 1st, 2003, 03:30 PM
#1
installing scrrun.dll
I am trying to limit my installation package to make the install as painless as possible to work on cross OSs.
when including scrrun.dll should I
1. just copy and regsvr it in the windows system directory
2. copy and regsvr it to the application directory
3. run scr56en.exe as part of the install package available from MS here
I am thinking option 3 is the best, because it has a /q cmd line param that will silently install it, and an MS made installer should be better than just copying over one file and registering it.. i have heard of lots of conflicts with people installing scrrun.dll via the copy/reg method...
just wanted someone elses opinion
-
Dec 1st, 2003, 05:11 PM
#2
kleinma
I use
Code:
Source: "c:\winnt\system32\scrrun.dll"; DestDir: "{sys}"; MinVersion: 0,4.0; Flags: regserver sharedfile
and have never had a problem with any OS. What problem are you having?
None of my packages has any problem with any OS, I do not understand?
-
Dec 1st, 2003, 05:15 PM
#3
Im not... but I am just going through each file to see if there are any issues I can address before a client has a problem
anyways, since you are pretty knowledgable with INNO, can you tell me this?
Is there anything I can set that will tell the UNINSTALL to delete everything including files that are in the directories that were created after the install? for example my application creates html docs in the data folder, but upon uninstall, I would like it to remove them and delete all folders, currently it leaves them which then makes the folders stay as well
also, what are the versions in INNO for the various windows versions? for example windows 95,98,98se,ME,2k,XP
seems the versions are not documented in the help unless I missed them.. and for some reason I can't access the newsgroups on the INNO site to try to find some info there.. I figured you would know since you made that ********** program... works pretty well by the way... even though for this particular install, I am trying to write this script manually.. plus I need to learn the ins and outs of INNO
-
Dec 1st, 2003, 05:31 PM
#4
kleinma
Yes, you can delete everything in the installation folder, althought it is not recommended.
Ex 1. Inexperienced user install app in the System32 folder by mistake. Now unInstall will delete everything in the system32 folder when you uninstall the app and you will have a pretty angry client!!!
Ex 2. The user has file of their own in the folder and now you delete them Ouch!
The versions are documented and are as follows:
Windows Versions
Windows versions:
4.0.950 Windows 95
4.0.1111 Windows 95 OSR 2 & OSR 2.1
4.0.1212 Windows 95 OSR 2.5
4.1.1998 Windows 98
4.1.2222 Windows 98 Second Edition
4.9.3000 Windows Me
Windows NT versions:
4.0.1381 Windows NT 4.0
5.0.2195 Windows 2000
5.01.2600 Windows XP
Note that there is normally no need to specify the build numbers (i.e. you may simply use "4.1" for Windows 98).
The newsgroup is pretty easy to get to if you are using Outlook. When you click on the link just let it put itself in outlook under News (GoTo News).
If you still want to delete all information in the folder let me know and i will get that info to you.
BTW: ********** is now listed on the jrsoftware.org website as a tool for Inno Setup.
-
Dec 1st, 2003, 05:37 PM
#5
1. yeah I would like to uninstall everything (or at least know how) putting a warning in the readme is enough as far as I am concerned... if they are stupid enough to install to system32, they should have their computer taken away from them...
2. so using minversion: 4.1,4.9 would only install a file on 98 and ME right???
its my comp thats messed up, thats why I can't get to the news groups right now... i gotta figure out whats wrong... cause I also can't access any files that are on an FTP via IE... it just started all of a sudden
-
Dec 1st, 2003, 05:47 PM
#6
kleinma
MinVersion: 4.1,4.9
Would install on 98 and higher and Me and Higher
You probably want
OnlyBelowVersion 4.2, 5.0
This would not install on anything higher that 98 and Me
As for the file deletion:
[UninstallDelete] section
This optional section defines any additional files or directories you want the uninstaller to delete, besides those that were installed/created using [Files] or [Dirs] section entries. Deleting .INI files created by your application is one common use for this section. The uninstaller processes these entries as the last step of uninstallation.
Here is a example of a [UninstallDelete] section:
[UninstallDelete]
Type: files; Name: "{win}\MYPROG.INI"
The following is a list of the supported parameters:
Type (Required)
Description:
Specifies what is to be deleted by the uninstaller. This must be one of the following:
files
The Name parameter specifies a name of a particular file, or a filename with wildcards.
filesandordirs
Functions the same as files except it matches directory names also, and any directories matching the name are deleted including all files and subdirectories in them.
dirifempty
When this is used, the Name parameter must be the name of a directory, but it cannot include wildcards. The directory will only be deleted if it contains no files or subdirectories.
Example:
Type: files
Name (Required)
Description:
Name of the file or directory to delete.
NOTE: Don't be tempted to use a wildcard here to delete all files in the {app} directory. I strongly recommend against doing this for two reasons. First, users usually don't appreciate having their data files they put in the application directory deleted without warning (they might only be uninstalling it because they want to move it to a different drive, for example). It's better to leave it up to the end users to manually remove them if they want. Also, if the user happened to install the program in the wrong directory by mistake (for example, C:\WINDOWS) and then went to uninstall it there could be disastrous consequences. So again, DON'T DO THIS!
Example:
Name: "{win}\MYPROG.INI"
Components and Tasks Parameters
Common Parameters
-
Dec 2nd, 2003, 09:09 AM
#7
ok so
MinVersion: 4.1, 4.1
would only install on a 98 system right?
-
Dec 2nd, 2003, 09:15 AM
#8
oh wait the first param is the 9X version... and the second is the NT version right?
so how would
MinVersion: 4.1,4.9
install on both 98 and higher and ME and higher? isnt the second number supposed to be either NT, 2k, or XP?
-
Dec 2nd, 2003, 09:23 AM
#9
kleinma
Well sort of got it right,
MinVersion is stating that it's the Minimum version it will install on, but it will install on higher version.
If you do not want it to install at all on higher versions you need to use the OnlyBelowVersion keyword.
The first parameter in either is the Windows Version (ie 95/98/Me)
The second is for NT Versions (ie NT 4/Win 2000/Win XP)
So you want:
MinVersion 98/Me,None - Which translates to MinVersion 4.1,0 and that will be Win98 First Edition, Win98 Second Edition and Me Only.
-
Dec 2nd, 2003, 09:42 AM
#10
thanks,
is there any sort of flag or combination that will NOT install on a specific version..
for example, I am going to include Jet 4 SP7 and there is one file for 98,2k,XP and a different one for ME
so maybe using MinVersion and OnlyBelowVersion together?
-
Dec 2nd, 2003, 09:50 AM
#11
kleinma
Yes, you have to use the Component keyword and section to make that happen. Your app is going to get as big as the Auto OS Updater, this is what it does.
-
Dec 2nd, 2003, 09:53 AM
#12
well im just going to have those 2 jet exes and MDAC 2.6 that should be all i need as far as DATA MDAC 2.6 will run on all the OSs but doesnt have jet...
anyways one more question for you
you said you use this line for SCRRUN.DLL
Code:
Source: "c:\winnt\system32\scrrun.dll"; DestDir: "{sys}"; MinVersion: 0,4.0; Flags: regserver sharedfile
now maybe this is what is confusing me.. but you have the
MinVersion: 0,4.0
doesn't that mean it WONT install to any 9x systems, but install on NT4 and above????
-
Dec 2nd, 2003, 10:01 AM
#13
kleinma
That is correct. That was just an example. For that app I do not want to install on Me and lower. Of course you can change that. ********** would have handled things like that for you. you can learn a lot from the script that ********** creates.
Download the latest release (2.0) and learn to use the templates also.
If you have anymore questions... You know how to find me.
-
Dec 2nd, 2003, 10:07 AM
#14
kleinma
You do realize we are up to Jet SP 8 and MDAC 2.8?
-
Dec 2nd, 2003, 10:11 AM
#15
Originally posted by randem
kleinma
You do realize we are up to Jet SP 8 and MDAC 2.8?
well I wrote the app using MDAC 2.6, and I have not tested it on a higher version... also JET SP8 says its only for 2k,xp,2003 so that would not do me any good for the users of 9x systems
-
Dec 2nd, 2003, 10:14 AM
#16
BTW, I have messed around with your program, it works pretty well from what I can tell... but I am still trying to learn INNO for myself so thats why im asking these questions... when I see what your app produces it doesn't really help me to understand WHY its there, thats why im asking these questions
-
Dec 2nd, 2003, 10:19 AM
#17
kleinma
Yes, that is great. Use it as a learning tool. From the different selection that you make in ********** you can view the results and learn what changed and why?
-
Dec 2nd, 2003, 10:42 AM
#18
Originally posted by randem
kleinma
Yes, you have to use the Component keyword and section to make that happen. Your app is going to get as big as the Auto OS Updater, this is what it does.
would you be able to elaborate on this? the help for the "Components" keyword was not much help...
also I still can't get news groups to work in outlook... i might need to reinstall it
-
Dec 2nd, 2003, 10:54 AM
#19
kleinma
Add something like this to your script. I would recommend placing it in the ********** template so that all of your scripts contain this info. Of course you can comment or delete anything that you do not want to use.
You can just add it manually to your script also.
Code:
; -------------------------------------------------------------------------------------------------------------------------------
;
; Author: Ralph James
; Randem Systems, Inc.
; email: ralph.james@***********
;
; This InnoSetup script shows how to install the Visual Basic Runtime files, DCOM and MDAC.
; -> MDAC 2.5 Sp1 (contains ADO 2.5, Microsoft Jet 4.0, OLE DB Providers for SQL-Server 7.0 / MSDE 1.0 and SQL-Server 6.5)
; -> MDAC 2.5 is the version that comes with Windows 2000 SP1
; -> MDAC 2.0 and above require DCOM on Windows 95 machines for installing successfully
; -> There are some issues with existing Microsoft ODBC Driver for Access, version 3.51
; -> MDAC 2.6 (contains ADO 2.6, OLE DB Provider for SQL-Server 2000)
; -> MDAC 2.6 has some issues with SQL 7.0 or SQL 6.5 Clustered Servers
; -> MDAC 2.6 doesn't contain Microsoft Jet drivers
;
; -------------------------------------------------------------------------------------------------------------------------------
[Setup]
OutputBaseFilename=VB_DCOM_MDAC_JET_AutoSetup
AppName=VB/DCOM/MDAC/JET
AppVerName=VB/DCOM/MDAC/JET
MinVersion=4.0,4.0
PrivilegesRequired=Admin
CreateAppDir=false
DisableProgramGroupPage=true
DisableStartupPrompt=true
ShowComponentSizes=false
Uninstallable=false
[Files]
; START VISUAL BASIC
Source: I:\Develop\Support\VB 6 Redist Files\STDOLE2.TLB; DestDir: {sys}; Flags: restartreplace uninsneveruninstall regtypelib
Source: I:\Develop\Support\VB 5 Redist Files\MSVBVM50.dll; DestDir: {sys}; Flags: restartreplace uninsneveruninstall regserver
Source: I:\Develop\Support\VB 6 Redist Files\MSVBVM60.dll; DestDir: {sys}; Flags: restartreplace uninsneveruninstall regserver
Source: I:\Develop\Support\VB 6 Redist Files\OleAut32.dll; DestDir: {sys}; Flags: restartreplace uninsneveruninstall regserver
Source: I:\Develop\Support\VB 6 Redist Files\OlePro32.dll; DestDir: {sys}; Flags: restartreplace uninsneveruninstall regserver
Source: I:\Develop\Support\VB 6 Redist Files\AsycFilt.dll; DestDir: {sys}; Flags: restartreplace uninsneveruninstall
Source: I:\Develop\Support\VB 6 Redist Files\ComCat.dll; DestDir: {sys}; Flags: restartreplace uninsneveruninstall regserver
; END VISUAL BASIC
; START DCOM
Source: I:\Develop\Support\dcom95.EXE; DestDir: {tmp}; Flags: ignoreversion; MinVersion: 4.0,0; OnlyBelowVersion: 4.1,0
Source: I:\Develop\Support\dcm95cfg.exe; DestDir: {tmp}; Flags: ignoreversion; MinVersion: 4.0,0; OnlyBelowVersion: 4.1,0
Source: I:\Develop\Support\dcom98.exe; DestDir: {tmp}; Flags: ignoreversion; MinVersion: 4.1,0; OnlyBelowVersion: 4.10.222,0
Source: I:\Develop\Support\dcm98cfg.exe; DestDir: {tmp}; Flags: ignoreversion; MinVersion: 4.1,0; OnlyBelowVersion: 4.10.222,0
; END DCOM
; START MDAC
Source: I:\Develop\Support\mdac_typ_28.exe; DestDir: {tmp}; Flags: ignoreversion; MinVersion: 4.0,4.0
Source: I:\Develop\Support\mdac_typ_20.exe; DestDir: {tmp}; Flags: ignoreversion; MinVersion: 4.0,4.0
Source: I:\Develop\Support\mdac_typ_28.exe; DestDir: {tmp}; Flags: ignoreversion; MinVersion: 4.0,4.0
; END MDAC
; START Jet
Source: I:\Develop\Support\Jet35sp3.exe; DestDir: {tmp}; Flags: ignoreversion; MinVersion: 4.0,4.0
Source: I:\Develop\Support\Jet40SP7_9xNT.exe; DestDir: {tmp}; Flags: ignoreversion; MinVersion: 4.0,4.0; OnlyBelowVersion: 4.9,5.0
Source: I:\Develop\Support\Jet40SP7_WMe.exe; DestDir: {tmp}; Flags: ignoreversion; MinVersion: 4.9,0;
Source: I:\Develop\Support\Jet40SP8_W2K.exe; DestDir: {tmp}; Flags: ignoreversion; MinVersion: 0,5.0; OnlyBelowVersion: 0,5.0sp3
Source: I:\Develop\Support\Jet40SP8_WXP.exe; DestDir: {tmp}; Flags: ignoreversion; MinVersion: 0,5.01; OnlyBelowVersion: 0,5.1sp1
; END Jet
[Run]
; START DCOM
Filename: {tmp}\dcom95.EXE; Parameters: /r:n /q:u; WorkingDir: {tmp}; Flags: skipifdoesntexist; MinVersion: 4.0,0; OnlyBelowVersion: 4.1,0
Filename: {tmp}\dcm95cfg.exe; Parameters: /r:n /q:u; WorkingDir: {tmp}; Flags: skipifdoesntexist; MinVersion: 4.0,0; OnlyBelowVersion: 4.1,0
Filename: {tmp}\dcom98.exe; Parameters: /r:n /q:u; WorkingDir: {tmp}; Flags: skipifdoesntexist; MinVersion: 4.1,0; OnlyBelowVersion: 4.10.222,0
Filename: {tmp}\dcm98cfg.exe; Parameters: /r:n /q:u; WorkingDir: {tmp}; Flags: skipifdoesntexist; MinVersion: 4.1,0; OnlyBelowVersion: 4.10.222,0
; END DCOM
; START MDAC
Filename: {tmp}\mdac_typ_20.exe; Parameters: "/Q /C:""setup /QNT"""; WorkingDir: {tmp}; Flags: skipifdoesntexist; MinVersion: 4.0,4.0
Filename: {tmp}\mdac_typ_28.exe; Parameters: "/Q /C:""setup /QNT"""; WorkingDir: {tmp}; Flags: skipifdoesntexist; MinVersion: 4.0,4.0
; END MDAC
; START Jet
Filename: {tmp}\Jet35sp3.exe; WorkingDir: {tmp}; Flags: skipifdoesntexist; MinVersion: 4.0,4.0
Filename: {tmp}\Jet40SP7_9xNT.exe; WorkingDir: {tmp}; Flags: skipifdoesntexist; MinVersion: 4.0,4.0; OnlyBelowVersion: 4.9,5.0
Filename: {tmp}\Jet40SP7_WMe.exe; WorkingDir: {tmp}; Flags: skipifdoesntexist; MinVersion: 4.9,0
Filename: {tmp}\Jet40SP8_W2K.exe; WorkingDir: {tmp}; Flags: skipifdoesntexist; MinVersion: 0,5.0; OnlyBelowVersion: 0,5.0sp3
Filename: {tmp}\Jet40SP8_WXP.exe; WorkingDir: {tmp}; Flags: skipifdoesntexist; MinVersion: 0,5.01; OnlyBelowVersion: 0,5.01sp1
; END Jet
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|