On 14/02/2010 09:41, Tim Golden wrote:
Just realised that pywin32 ships with an example of this.
  From my site-packages directory:

win32\Demos\service\serviceEvents.py

I haven't had the chance to try it out, but let is know if it does
meet your case.

Well I've given it a go and, naturally, it works ok. Except...

As documented(ish) (look under Remarks):

  http://msdn.microsoft.com/en-us/library/aa363431%28VS.85%29.aspx

It'll only handle DBT_DEVTYP_DEVICEINTERFACE or DBT_DEVTYP_HANDLE

That wouldn't matter too much since the device interface event
returns the name of the volume, which one can use to good effect.
Except...

The pywin32gui_struct library which parses the stuff coming back
from the events assumes that the string is NUL-terminated. But
it's a UTF16 Unicode string so it's "nul-terminated" after the
first byte. I'll raise this as a bug on the pywin32 tracker, but
meanwhile I'll try to get an example which works around it by
parsing the header manually, as per the windows message example.
Or I could monkey-patch the win32gui_struct module. Might be
easier.

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

Reply via email to