[Python-Dev] Install-on-first-use vs. optional extensions
garth at garthy.com
Thu Sep 9 13:39:33 CEST 2004
Couldn't you conditionally run RegisterExtensionInfo?
And set this in a dialog checkbox? (Which I don't know haow to do in msi
This is my guess at a patch
--- oldsequence.py Thu Sep 9 12:35
+++ sequence.py Thu Sep 9 12:35
@@ -50,7 +50,7 @@
(u'PublishFeatures', None, 6300),
(u'PublishProduct', None, 6400),
(u'RegisterClassInfo', None, 4600),
-(u'RegisterExtensionInfo', None, 4700),
+(u'RegisterExtensionInfo', 'INSTALLEXT=1', 4700),
(u'RegisterMIMEInfo', None, 4900),
(u'RegisterProgIdInfo', None, 4800),
(u'AllocateRegistrySpace', u'NOT Installed', 1550),
Martin v. Löwis wrote:
> I recently looked into properly implementing the "Register Extensions"
> feature in the installer; in 2.4a3, not selecting that doesn't really
> work. The problem is that MSI only supports installing either both
> the "extension server" (the .exe) and the extension, or neither. So
> you can chose not to install word.exe, and it won't install the .doc
> extension; if you install word.exe, it will associate .doc with it.
> For Python, this leaves us with three options:
> 1. Don't make registration of extensions optional; always associate
> .py, .pyc, .pyw, .pyo.
> 2. Don't support installation-on-demand for extensions. This means
> to not use the MSI extension machinery at all, but to directly
> write the registry keys that build the extension. Installing
> these keys can then be made optional.
> 3. Provide another binary that is the "extension server", and
> install that independently of python.exe, and pythonw.exe.
> In CVS, I have implemented this approach to see whether it
> works (it does), and called this binary "launcher.exe". It
> is a Windows app which supports a -console argument which also
> makes it a console app. This is the the binary that gets
> associated with all four extensions, for the "open" verb.
> Currently, I'm in favour of using option 3, but I'd like to hear
> whether people would prefer something else instead.
> Python-Dev mailing list
> Python-Dev at python.org
More information about the Python-Dev