Hey Georg,
Sounds great! Could you submit the patch as a file to the patch
tracker? I've had bad luck with patches inline in emails. Then I'll
include it.
.hc
On Jun 3, 2009, at 5:11 AM, Georg Werner wrote:
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;
----------------------------------------------------------------------------
I have always wished for my computer to be as easy to use as my
telephone; my wish has come true because I can no longer figure out
how to use my telephone." --Bjarne Stroustrup
_______________________________________________
Pd-dev mailing list
[email protected]
http://lists.puredata.info/listinfo/pd-dev