|
No I haven't, but if you do come up with a port, please post it. I might switch to .NET 2.0/VS.NET 2005 in the future, but ATM I have no reason to.
|
|
|
|
|
Just check the registry for v2.0 :
[Code]
function InitializeSetup(): Boolean;
var
ErrorCode: Integer;
NetFrameWorkInstalled : Boolean;
Result1 : Boolean;
begin
NetFrameWorkInstalled := RegKeyExists(HKLM,'SOFTWARE\Microsoft\.NETFramework\policy\v2.0');
if NetFrameWorkInstalled =true then
begin
Result := true;
end;
if NetFrameWorkInstalled =false then
begin
Result1 := MsgBox('This setup requires the .NET Framework v2.0. Please download and install the .NET Framework v2.0 and run this setup again. Do you want to download the framwork now?',
mbConfirmation, MB_YESNO) = idYes;
if Result1 =false then
begin
Result:=false;
end
else
begin
Result:=false;
ShellExec('open', 'http://download.microsoft.com/download/a/a/c/aac39226-8825-44ce-90e3-bf8203e74006/dotnetfx.exe','','',SW_SHOWNORMAL,ewNoWait,ErrorCode);
end;
end;
end;
Good luck!
|
|
|
|
|
Hi,
I think there is an error in the script:
RegQueryStringValue(HKLM, 'Software\Microsoft\Internet Explorer', 'Version', sRet);
if downloadNeeded and (sRet < '3') then begin
Doesn't this check that IE 3 is installed rather than IE6?
IE 6 is required for .NET AFAIK.
Please let me know how to fix this. I presume you can't just change the 3 to a 6 because the value it's reading is not an integer - it's a version number like 6.0.2900.2180.
Thanks,
Nick...
|
|
|
|
|
Hi,
That part of the script deals isxdl being unable to download files. It needs IE3 or later installed, and yes, I have an NT4 CD that ships with IE2.
About the version string: I'm not a pascal programmer, but I'll try to answer your question. Either pascal treats the string as a number, ending at the first or second decimal, or it does a string comparison on the 3 and 6, for example. EG, "a" < "b" because a is lower than b in the ascii character table.
|
|
|
|
|
But .NET requires IE6, so why not check they have that as well? I don't really understand why it only checks for IE3, since if IE6 isn't installed then .NET won't work.
Nick...
|
|
|
|
|
It does check for IE6. If anything less than IE5 is installed, it installs 6. It says so in the article, but here's the relevant part in the script:
<br />
sRet := '';<br />
RegQueryStringValue(HKLM, 'Software\Microsoft\Internet Explorer', 'Version', sRet);<br />
if (not exclusiveNeeded) and (sRet < '5') then begin<br />
exclusiveNeeded := true;<br />
MsgBox('Internet Explorer 6 must be installed before Setup can install the application. Setup will attempt to install IE 6 for you. After the computer reboots, please run Setup again.', mbInformation, MB_OK);<br />
memoDependenciesNeeded := memoDependenciesNeeded + ' Internet Explorer 6' #13;<br />
iePath := ExtractFileDrive(ExpandConstant('{src}')) + '\dependencies\ie6full\ie6setup.exe';<br />
if not FileExists(iePath) then begin<br />
iePath := ExpandConstant('{tmp}\ie6setup.exe');<br />
if not FileExists(iePath) then begin<br />
isxdl_AddFile(ieURL, iePath);<br />
downloadNeeded := true;<br />
end;<br />
end;<br />
SetIniString('install', 'ie', iePath, ExpandConstant('{tmp}\dep.ini'));<br />
end;<br />
Also, .NET 1.1 only requires IE 5. See http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnnetdep/html/NETFx1Redistreq1_1.asp
-- modified at 12:50 Thursday 27th April, 2006
|
|
|
|
|
Microsoft's articles KB164539 and KB969393 shows that IE3 version is 4.70.1155, but anyway the "Version" value in that registry key only exists on IE4 and later.
modified on Thursday, May 14, 2009 2:50 PM
|
|
|
|
|
Hi,
first of all an absoulutely thanks to you for this tool!!!
It seems to me, that the new edition of ISTools brings some problems:
InstExec() is no longer available
InstShellExec is also no longer available
and SkipCurPage must be chaged to ShouldSkipPage!
this was the only thing I could change succesfully!
Does anyone know how to fix the rest of it, listed below?
Or has somebody still got the old Versions files?
thanks!
Michi
if FileExists(iePath) then begin
MsgBox('Internet Explorer 5 (or later) must be installed manually before Setup can continue.' #13#13 'Setup will now exit and begin the IE 5 installation.', mbInformation, MB_OK);
InstExec(iePath, '', '', false, false, 0, nRet);
end else begin
if MsgBox('Internet Explorer 5 (or later) must be installed manually before Setup can continue.' #13#13 'Would you like to visit the download site now?', mbConfirmation, MB_OKCANCEL) = IDOK then
InstShellExec('http://www.microsoft.com/windows/ie/downloads/recommended/ie501sp2/default.asp', '', '', SW_SHOWNORMAL, nRet);
end;
|
|
|
|
|
Here's what I did, didnt test it but compiles
if FileExists(iePath) then begin
MsgBox('Internet Explorer 5 (or later) must be installed manually before Setup can continue.' #13#13 'Setup will now exit and begin the IE 6 installation.', mbInformation, MB_OK);
Exec(iePath, '', '', SW_SHOWNORMAL, ewNoWait, nRet);
end else begin
if MsgBox('Internet Explorer 5 (or later) must be installed manually before Setup can continue.' #13#13 'Would you like to visit the download site now?', mbConfirmation, MB_OKCANCEL) = IDOK then
ShellExec('open', 'http://www.microsoft.com/ie', '', '', SW_SHOWNORMAL, ewNoWait, nRet);
end;
|
|
|
|
|
I've been looking for something like this for a while now. I also want to check for the existence of JRE so I will attempt to tweak the script and see if I can get that going as well.
.:. Keno .:.
|
|
|
|
|
Hi
The .NET Framework 1.1 requires only MDAC 2.6 and not MDAC 2.8.
How can i find the exact path to download it from the internet?
Also id the only change in the code I have to do is in line 118:
if (not exclusiveNeeded) and (sRet < '2.6') then begin
Instead:
if (not exclusiveNeeded) and (sRet < '2.6') then begin
(Beside of course the path change)
Thanks,
Naor
|
|
|
|
|
Didn't work in my Win98SE-Ger VM. Here are the changes I made to fix it:
<br />
Line 75:<br />
if RegQueryStringValue(HKLM, 'Software\Microsoft\Windows NT\CurrentVersion', 'CurrentVersion', sRet) then begin<br />
Line 89:<br />
Insert an end;<br />
and Change the IE Version-Check around Line 100 from<br />
if (not exclusiveNeeded) and (sRet < '5') then begin<br />
to<br />
if (not exclusiveNeeded) and (sRet < '5.01') then begin<br />
|
|
|
|
|
Actually, the IE Version-Check you mention only needs to make sure the IE version is 3 or superior, in order to allow the setup to download the installers.
Microsoft's articles KB164539 and KB969393 shows that IE3 version is 4.70.1155, but anyway the "Version" value in that registry key only exists on IE4 and later.
modified on Thursday, May 14, 2009 2:54 PM
|
|
|
|
|
New to this. The first line is:
#include "C:\Program Files\ISTool 4\isxdl.iss"
pray tell where is that file? It's not in the download.
|
|
|
|
|
It's from other great tool for InnoSetup, ISTool
|
|
|
|
|
I installed ISTool but still can't find isxdl.iss file ...
Does anyone knows where it is exactly ?
Thanks for the post, seems to be really good
|
|
|
|
|
I'm sorry, I wasn't clear. From www.istool.org you need to download "ISX Download Dll". It's important, because that article uses it. After installation you will find the isxdl.iss.
Yes, the post is great, I'm gonna use it to prepare installation of my project. Thank you, Ted!
|
|
|
|
|
The ISTool link is broken - can anyone post this or email it to aaronmurray_at_msn.com ?
Thanks!
|
|
|
|
|