|
Hey stfx.
Amazing work!
Wanted to let you know I've added my own danish translation that I use for my projects. Message me privately if you wanna use it.
Best regards,
myl
|
|
|
|
|
Hello,
i get the message "An error occured while installing..."
Maybe you have to answer this often, but i have no solution for my Inno Setup setup.
I use win7 and want to add the jet4 software to my program
How can i solve it?
|
|
|
|
|
Hi, great solution! I'm trying it but I need to restart my system before installing SQL Server 2008(one of my dependencies).
I read you add some feature about restarting the system. Could you tell me how to achieve this?
Thank's in advance.
Andres
|
|
|
|
|
Hi -
When I try to have the SQLCompact3.5sp2 installed on a vista machine (and any other machine for that matter), I get a error message;
"
This installation could not be opened. Contact the application vendor to verify that this a valid Windows installer package.
"
I've done some reasearch and it looks like it's because the original script points to an MSI and the download now points to an EXE which extracts x86 and x86 MSI's... so which then don't run automatically.
I'm a bit stuck... anyone got over this problem before?
Thanks for any help.
|
|
|
|
|
Hi,
I have the same problem on WindowsXP.
Thanks for any help.
|
|
|
|
|
Message Closed
modified 23-Dec-20 12:38pm.
|
|
|
|
|
Hi, I have the same problem. The changes don't fix the problem. The downloaded file is a selfextracting file containing two msi-files.
|
|
|
|
|
Try this code
Unfortunately you need to host sql compact by yourself.
File: scripts\products\sqlcompact35sp2.iss
[CustomMessages]
sqlcompact35sp2_title=SQL Server Compact 3.5 Service Pack 2
sqlcompact35sp2_titlex64=SQL Server Compact 3.5 Service Pack 2 x64
en.sqlcompact35sp2_size=3.0 MB
de.sqlcompact35sp2_size=3.0 MB
en.sqlcompact35sp2_sizex64=3.5 MB
de.sqlcompact35sp2_sizex64=3.5 MB
[Code]
const
sqlcompact35sp2_url = 'http://pliki.naturalmedia.pl/prerequisites/SSCERuntime_x86-ENU.msi';
sqlcompact35sp2_urlx64 = 'http://pliki.naturalmedia.pl/prerequisites/SSCERuntime_x64-ENU.msi';
procedure sqlcompact35sp2();
begin
if (not IsWin64 and
not RegKeyExists(HKLM, 'SOFTWARE\Microsoft\Microsoft SQL Server Compact Edition\v3.5\ENU')) then
AddProduct('SSCERuntime_x86-ENU.msi',
'/qb',
CustomMessage('sqlcompact35sp2_title'),
CustomMessage('sqlcompact35sp2_size'),
sqlcompact35sp2_url,
false, false);
if (IsWin64
and
(
not RegKeyExists(HKLM, 'SOFTWARE\Microsoft\Microsoft SQL Server Compact Edition\v3.5\ENU')
and not RegKeyExists(HKLM, 'Wow6432Node\SOFTWARE\Microsoft\Microsoft SQL Server Compact Edition\v3.5\ENU')
)) then
begin
AddProduct('SSCERuntime_x86-ENU.msi',
'/qb',
CustomMessage('sqlcompact35sp2_title'),
CustomMessage('sqlcompact35sp2_size'),
sqlcompact35sp2_url,
false, false);
AddProduct('SSCERuntime_x64-ENU.msi',
'/qb',
CustomMessage('sqlcompact35sp2_titlex64'),
CustomMessage('sqlcompact35sp2_sizex64'),
sqlcompact35sp2_urlx64,
false, false);
end;
end;
Tomasz Maj
|
|
|
|
|
Thanks Tomasz, it works! I had already thought about such a solution, but with your code I didn't needed to write it myself
|
|
|
|
|
Hello,
I have got the problem that the installer wants to install the c++ 2010
reditributable package and then exits because it recognizes that a newer
version of the package is already installed.
That's possible because I have Visual Studio 2010 installed on that machine.
But what can I do then ? I cannot install the program.
It would be great if your could edit the vcredist2010.iss file that it recognizes
that the package is already installed if its a newer one.
Thanks,
Matthias
|
|
|
|
|
If you look into scripts/products/vcredist2010.iss, I think it should say
RegQueryDWordValue(HKLM, 'SOFTWARE\Microsoft\VisualStudio\10.0\VC\VCRedist\' + GetString('x86', 'x64', 'ia64'), 'Installed', version);
instead of
RegQueryDWordValue(HKLM, 'SOFTWARE\Microsoft\VisualStudio\10.0\VC\VCRedist\' + GetString('x86', 'x64', 'ia64'), 'Install', version);
ie. there is no Install value, but there is Installed. That is also consistent with the check for one on the next line
if (version <> 1) then ...
|
|
|
|
|
True. I've run into that issue as well. But there's one more, regarding detection on on x64/ia64 (regardless which runtime is installed). I'm adressing that in a separate post "Detecting/Installing VC++ 2010 Runtime".
|
|
|
|
|
I've added a new product script called vcredist2008.iss - what is yet missing is proper detection by registry key, though. This is different to VC++ 2010 (numerous keys and versions possible as far as I can see). I tried to workaround this by using the '/q' switch so that no "repair" dialog occurs if already installed. Still, improvements would be welcome:
// requires Windows 7, Windows 7 Service Pack 1, Windows Server 2003 Service Pack 2, Windows Server 2008, Windows Server 2008 R2, Windows Server 2008 R2 SP1, Windows Vista Service Pack 1, Windows XP Service Pack 3
// requires Windows Installer 3.1 or later
// requires Internet Explorer 5.01 or later
// http://www.microsoft.com/downloads/en/details.aspx?FamilyID=9cfb2d51-5ff4-4491-b0e5-b386f32c0992
[CustomMessages]
vcredist2008_title=Visual C++ 2008 Redistributable
en.vcredist2008_size=3.9 MB
de.vcredist2008_size=3,9 MB
en.vcredist2008_size_x64=4.7 MB
de.vcredist2008_size_x64=4,7 MB
en.vcredist2008_size_ia64=4.0 MB
de.vcredist2008_size_ia64=4,0 MB
;http://www.microsoft.com/globaldev/reference/lcid-all.mspx
en.vcredist2008_lcid=''
de.vcredist2008_lcid='/lcid 1031 '
[Code]
const
vcredist2008_url = 'http://download.microsoft.com/download/0/a/5/0a5ce308-1e15-4806-964c-72dbf88de86d/vcredist_x86.exe';
vcredist2008_url_x64 = 'http://download.microsoft.com/download/4/a/9/4a932a53-ab98-44d9-af39-75491eb20006/vcredist_x64.exe';
vcredist2008_url_ia64 = 'http://download.microsoft.com/download/c/9/4/c9494e23-6717-47c3-a061-3cc2ce5453f8/vcredist_IA64.exe';
procedure vcredist2008();
var
version: cardinal;
begin
//RegQueryDWordValue(HKLM, 'SOFTWARE\Microsoft\VisualStudio\10.0\VC\VCRedist\' + GetString('x86', 'x64', 'ia64'), 'Install', version);
//if (version <> 1) then
AddProduct('vcredist2008' + GetArchitectureString() + '.exe',
CustomMessage('vcredist2008_lcid') + '/q /passive /norestart',
CustomMessage('vcredist2008_title'),
CustomMessage('vcredist2008_size' + GetArchitectureString()),
GetString(vcredist2008_url, vcredist2008_url_x64, vcredist2008_url_ia64),
false, false);
end;
|
|
|
|
|
for now I've changed the procedure as follows:
procedure vcredist2008();
var
version: cardinal;
MS, LS: Cardinal;
begin
//RegQueryDWordValue(HKLM, 'SOFTWARE\Microsoft\VisualStudio\10.0\VC\VCRedist\' + GetString('x86', 'x64', 'ia64'), 'Install', version);
//if (version <> 1) then
if GetVersionNumbers(ExpandConstant('{sys}\msvcr90.dll'), MS, LS) = false and GetVersionNumbers('msvcr90.dll', MS, LS) = false then
AddProduct('vcredist2008' + GetArchitectureString() + '.exe',
CustomMessage('vcredist2008_lcid') + '/q /passive /norestart',
CustomMessage('vcredist2008_title'),
CustomMessage('vcredist2008_size' + GetArchitectureString()),
GetString(vcredist2008_url, vcredist2008_url_x64, vcredist2008_url_ia64),
false, false);
end;
|
|
|
|
|
Message Closed
modified 23-Dec-20 12:54pm.
|
|
|
|
|
Hm, actually I wanted to avoid using product codes, as they potentially change between CPU architetures and service packages - but for my installer it doesn't matter.
I've "fixed" that now by migrating to VC++ 10 (2010) - but ran into another issue.
Will do a separate post with topic "Detecting/Installing VC++ 2010 Runtime".
|
|
|
|
|
Does anyone perhaps know of a script for installing SP1/SP2/SP3 (Windows XP)?
I am also looking for scripts for (in order of importance):
1) MS security essentials
2) Flash Player
3) VLC (with all plugins)
4) adobe reader X
5) KLITE coded pack
6) Java JRE
Any help would be much appreciated.
|
|
|
|
|
Does inno have any dependancies itself?
To be specific, lets say I have a newly installed vanilla xp without any SPacks, will Inno script run or not?
|
|
|
|
|
It works on vanilla XP without windows installer and/or any installed frameworks, just checked.
|
|
|
|
|
Can I install a dependency according to the selected components?
For example, you select Component 1 then install Framework 4.0, otherwise it not install.
Thank you very much, excellent work.
|
|
|
|
|
I'm interested in this too.
Has anybody a solution for it?
Thanks
Freddy
|
|
|
|
|
Ok, I have a developed a solution for this problem:
1. Add to isxdl.iss:
procedure isxdl_ClearFiles();
external 'isxdl_ClearFiles@files:isxdl.dll stdcall';
2. Add to products.iss:
procedure ClearProducts();
begin
isxdl_ClearFiles();
SetArrayLength(products, 0);
installMemo := '';
downloadMemo := '';
downloadMessage := '';
delayedReboot := false;
end;
3. Modify NextButtonClick in products.iss:
- Rename method to: function OnWpReadyPage(): boolean;
- Remove: if CurPageID = wpReady then begin ... end; block
4. Add to your project.iss:
function NextButtonClick(CurPageID: Integer): boolean;
begin
Result := true;
if CurPageID = wpSelectComponents then
begin
ClearProducts();
if(WizardForm.Componentslist.Checked[0]) then
begin
if (not netfxinstalled(NetFx40Full, '')) then
dotnetfx40fullstandalone();
end;
end;
if CurPageID = wpReady then
begin
Result := OnWpReadyPage();
end;
end;
Hope this fits to your problem.
Freddy
|
|
|
|
|
Very useful and illustrative.
|
|
|
|
|
Excellent job.
Thanks for sharing!
|
|
|
|
|
|