Problem with GetVolumeInformation

Chris McKenzie cjmckenzie at ucdavis.edu
Thu Apr 22 21:26:08 CDT 2004


The refers to the 2004-03-09 ChangeLog, specifically:

        * dlls/kernel/Makefile.in, dlls/kernel/volume.c,
dlls/ntdll/file.c,
          documentation/samples/config, documentation/wine.conf.man,
          files/drive.c, include/drive.h, include/winnt.h:
        Reimplemented GetVolumeInformation and SetVolumeLabel; volume label
        and serial number are now stored in the filesystem instead of in the
        config file (partly based on a patch by Eric Pouech).

GetVolumeInformation's new implementation has 2 problems:

1. For software that was previously registered with a "made up" serial
number via the "serial=" directive in the config file, the software (for
me Altera MaxPlus) will no refuse to run claiming a change in serial.

2. If the function fails to claim a serial number (What actually _did_
happen with me) it will fall back on *serial=0.  In my opinion this does
not seem reasonable.

I propose two options for wineconfig. First, one that says

UseConfigSerial = [Y/N]

Which will use the serial number in the config file and ignore the one on
disk (This is useful for people that registered their software before the
new function implementation)

And the second option will be to reinstate the

serial=

for the drive descriptions.  This should be the fallback serial number if
the function fails, instead of the value *serial=0.

I made a quick hack to return the value that I needed - however, I have
not dealt with the kernel or the wine code extensively so I cannot put for
a patch that does this at this time.  However, I think this is a much more
sensible design decision.  Thank you.

Sincerely,
	Christopher J. McKenzie
	cjm at ucdavis.edu



More information about the wine-devel mailing list