hi hans,
i made a patch with code to check for a previous version of pd (but only
if this is in the same directory you want to install the new one to)
and offers the possibility to uninstall first.
cheers
g.
Hans-Christoph Steiner schrieb:
Ok, that's a good start! Could you generate a patch and send it to
me? Its not hard if you have SVN installed. I'll bet TortoiseSVN or
other GUIs can do it. From the command line, you would do this:
cd pure-data/packages/win32_inno/
svn diff pd-inno.iss.in > alwaysoverwrite.patch
But the question I have, is that going to cause any problems? Like if a
file is removed in a new release, and you install the new version over
the old one, will that file still stay there, left over from the old
release?
I wonder how people deal with that, perhaps there is a way to compare
two installers, and then configure the new installer to only delete the
files that it must.
Perhaps its better to continute this on pd-dev, so others can
participate and its in the archive.
.hc
On Apr 21, 2009, at 5:40 PM, Georg Werner wrote:
hi,
i just gave it a shot ;)
i read the documentation and think i found the lines (in
pd-inno.iss.in) where the problem lies:
341 Source: build\bin\*.*; DestDir: {app}\bin; Flags: ignoreversion
confirmoverwrite recursesubdirs uninsremovereadonly
342 Source: build\doc\*.*; DestDir: {app}\doc; Flags: ignoreversion
confirmoverwrite recursesubdirs uninsremovereadonly; Attribs: readonly
i think the confirmoverwrite flag is causing the trouble -
alwaysoverwrite would be better in this case.
same in these lines:
351 Source: build\lib*.dll; DestDir: {sys}; Flags: restartreplace
confirmoverwrite sharedfile
352 Source: build\pthread*.dll; DestDir: {sys}; Flags: restartreplace
confirmoverwrite sharedfile
hope this helps
cheers
g.
Hans-Christoph Steiner schrieb:
Hey,
I forgot whether I mentioned this before. One thing that would
improve the newbies experience using Pd-extended on Windows is to
make sure that the installer works smoothly. It uses Inno Setup,
which is a nice GUI program that is decently documented. Want to
give that a shot?
One specific complaint is that you have to uninstall Pd-extended
before you can upgrade. It would be nice if it would automatically
overwrite or uninstall the old copy.
.hc
----------------------------------------------------------------------------
Man has survived hitherto because he was too ignorant to know how to
realize his wishes. Now that he can realize them, he must either
change them, or perish. -William Carlos Williams
----------------------------------------------------------------------------
"It is convenient to imagine a power beyond us because that means we
don't have to examine our own lives.", from "The Idols of
Environmentalism", by Curtis White
Index: pd-inno.iss.in
===================================================================
--- pd-inno.iss.in (revision 11314)
+++ pd-inno.iss.in (working copy)
@@ -364,3 +364,25 @@
;Source: build\portaudio\*.*; DestDir: {app}\portaudio; Flags: ignoreversion
recursesubdirs
;Source: build\src\*.*; DestDir: {app}\src; Flags: ignoreversion recursesubdirs
;Source: build\tcl\*.*; DestDir: {app}\tcl; Flags: ignoreversion recursesubdirs
+
+[Code]
+function NextButtonClick(CurPageID: Integer): Boolean;
+var
+ ResultCode: Integer;
+begin
+ case CurPageID of
+ wpReady:
+ begin
+ if(FileExists(ExpandConstant('{app}\unins000.exe'))) then begin
+ if MsgBox('Found a previous Version of Pure Data at ' +
ExpandConstant('{app} ') + #13#13 'Do you want to uninstall it first?
(recommended)', mbConfirmation, MB_YESNO) = idYes then begin
+ if not Exec(ExpandConstant('{app}\unins000.exe'), '',
'', SW_SHOWNORMAL, ewWaitUntilTerminated, ResultCode) then
+ MsgBox('NextButtonClick:' #13#13 'The uninstall file could not be
executed. ' + SysErrorMessage(ResultCode) + '.', mbError, MB_OK);
+ end;
+ end;
+ BringToFrontAndRestore();
+ MsgBox('NextButtonClick:' #13#13 'The normal installation will now
start.', mbInformation, MB_OK);
+ end;
+ end;
+
+ Result := True;
+end;
_______________________________________________
Pd-dev mailing list
[email protected]
http://lists.puredata.info/listinfo/pd-dev