The problem with replacing individual DLLs is that they come in matched
sets. Unless you replace the whole set bad things can happen. It is often
easiest to install a service pack or product that'll upgrade the DLLs for
you. Or if you do use a professional installer like IPWI, load a merge
module to handle it for you.

This is an excellent article from Microsoft which explains the DLL Hell
pitfalls and how Win2K is attempting to handle it (along with a
troubleshooting tool for all Win32 systems):


-----Original Message-----
From: Tim Peters [mailto:tim.one at home.com]
Sent: Friday, March 02, 2001 1:10 PM
To: python-list at python.org
Subject: RE: Unresolved symbols in MSVCRT.DLL when running a py2exe
packaged program.

I disagree.

You can distribute system dll's. You are expected to, and sometimes you
have to. You must insure that the version you load is at least
equal to the version that you linked against.

I have done this (distribute system DLL's) on all windows except WinME and
the 16bit ones. Unfortunately I can't say how I did it precisely, because
I just used InstallShield.
And Python just uses the Wise installer. They aren't that fancy under the
covers, though -- they just "follow the rules", checking version numbers,
bumping refcounts on refcounted DLLs, and arranging for a reboot if they
to replace something. But that stuff is ineffective on the newer systems
with SFP.
But I believe that, where SFP exists, you must use specific and new
API's to replace DLL's, otherwise the system will back out your changes.
My understanding is that SFP isn't so easily fooled; e.g.,



SFP won't allow replacement of protected files via just using API tricks; it
also sucks in a digital signature scheme, and only MS can supply signatures
that work.
One solution is to specify the changes in an .INF file and let the system
worry about these details (but this has its limitations).

I assume that Python itself updates the MSVCRT.dll.
The PythonLabs Windows installer tries to, yes.
Might look at how it does it on Win2K.
My understanding is that it can't (but Win2K ships with a "good enough" set
of DLLs, so the version check shouldn't trigger there -- yet).

BTW, I'm *glad* MS is doing SFP! Whatever Windows Life may be in theory,
DLLs in practice cannot be mixed and matched -- you need a self-consistent
set else Very Strange Things Happen. And with about 1,000 DLLs under a
typical Windows system directory, that's just impossible for app developers
to keep straight. May well be impossible for MS to keep straight too, but
least it's no longer impossible for them to *try* to keep 'em straight now.

something-to-ponder-each-time-your-win9x-crashes-ly y'rs - tim


From adaminthedomaindevtty.net Sat Mar 3 07:15:45 2001
From: adaminthedomaindevtty.net (Adam Logghe)
Date: Fri, 2 Mar 2001 22:15:45 -0800
Subject: Editing Python source as XML?
References: <mailman.983546704.10789.python-list@python.org>
Message-ID: <3a9fe475_1@news.nwlink.com>

It sounds like the feature you are really looking for is frequently called
"code folding".

I also find it to be very useful. You have many options in editors
unfortunately IDLE does not yet support code folding.

www.activestate.com has a project called "Komodo" which is written with a
combination of the Mozilla codebase and Python (my understanding is that
originally this was also to have a substantial portion written in Perl but
the developers could code so much faster in Python that Perl ended up as a
minor part). Despite some primitive features I have begun to use this
full-time, I find it the easiest to use for editing multiple files. I'm
hoping they start supporting XML folding as well.

www.activestate.com also supports "PythonWin" which is basically a Windows
specific enhanced version of IDLE.

http://archaeopteryx.com/ is selling an Editor for Linux which also supports
code folding and looks very capable. It is available for free if you are
using it to develop free software.

I know I am missing one more fairly significant editor, I am sure someone
else will point that out (extra points for not mentioning vi or emacs).

By the way, there are several shareware editors available that support
Python and code folding. Search on hotfiles.com

in the domain devtty.net

"Steven Haryanto" <steven at haryan.to> wrote in message
news:mailman.983546704.10789.python-list at python.org...
A recent experience of having to modify a long C source file has
led me to wonder whether there are any tool/effort towards editing
Python source code as XML or other form of structured document.

What I would like is an editor that presents the source file as a
tree outline, where I can collapse selected class or function
definition body, certain long if's/for's, some section of code,
view/hide the asserts, etc. So then I only have to deal with the
section I am concentrating with and don't have look at other
distracting parts (especially in C with all those #ifdef/#endif's,

I visited conglomerate.org some months ago, and it seems the
project has been abandoned.


Search Discussions

Discussion Posts


Related Discussions

Discussion Navigation
viewthread | post
posts ‹ prev | 2 of 2 | next ›
Discussion Overview
grouppython-list @
postedMar 2, '01 at 1:15p
activeMar 2, '01 at 6:23p

1 user in discussion

Rolander, Dan: 2 posts



site design / logo © 2022 Grokbase