> I'd like to know what's the 'proper' way to stop a pythonwin's overlay
> shell extension from kicking in. I've not been able find much
> documentation on this, particularly the return values of
> GetOverlayInfo() function. Based on sample that I've found, the
> GetOverlayInfo() function returns a tuple of (icon_path, 0,
> shellcon.ISIOI_ICONFILE), and it's not clear to me what the '0' is
> representing.
> 
> So far my way to 'kill' the extension is either to raise an exception
> in, or return None from, GetOverlayInfo(). Though it seemed to work
> fine so far, I am not sure if this will create and ill effect down the
> road.  I'd really appreciate if anyone can share some experience on
> this. Thanks.

Tim answered one of your questions, but I don't quite understand the other
one.

The correct way is simply to remove the shell extension and restart any
programs which may have used it.  COM doesn't define a way to "stop" an
object or anything similar at all - what will work will depend on the
implementation of the code using the object - in this example, of
explorer.exe.

If you want something specific to your app, then your shell extension code
could check some kind of flag/event/whatever and then refuse to do anything
- but that isn't "killing" it.

BTW, have you been tracking the shell extension code for bzr?  It shouldn't
be that far from being VCS agnostic and a first cut has been released and
pushed (I'm assuming you are still playing with shell extensions for
mercurial :)

Cheers,

Mark



_______________________________________________
python-win32 mailing list
python-win32@python.org
http://mail.python.org/mailman/listinfo/python-win32

Reply via email to