Write problem with MS Office 2003

Stefan Dösinger stefandoesinger at gmx.at
Tue May 24 15:45:17 CDT 2005


Am Dienstag, 24. Mai 2005 17:10 schrieb Juan Lang:
> Hi Stefan,
>
> --- Stefan Dösiner <stefandoesinger at gmx.at> wrote:
> > How do I handle apidl == NULL? As far as I understand, apidl specifies a
> > list
> > of folders/files to be checked, right? If apidl == 0, what folder should
> > I
> > check. Is there some 'current folder' in the IShellFolder class? I
> > didn't
> > find any.
>
> Right, apidl can't be NULL if cidl is nonzero.  If cidl is zero, you
> probably need the check to be in the caller.  E.g. in shfldr_fs.c, the
> current folder is what calls SHELL32_GetItemAttributes, from
> IShellFolder_fnGetAttributesOf.  Perhaps the dwAttributes member that's
> passed to InitializeEx sets the correct attributes for the current folder?
>  I'm not sure.
This->pidlRoot looks promissing

Checking against This->pidlRoot makes writing work. On an write-protected 
folder, this check still succeeds(the read-only flag is removed). Perhaps a 
test with windows is needed. If I try to write to an write-protected folder 
in win2k, Windows simply ingores the write protection. Under Wine there's an 
error later on if the file can't be written to.

Is the attached patch correct? I am not sure because I don't know much about 
these things, so I am not submitting it to wine-patches yet.
Any suggestions?

Stefan
-------------- next part --------------
A non-text attachment was scrubbed...
Name: shell32.diff
Type: text/x-diff
Size: 1245 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-devel/attachments/20050524/8ed28146/shell32.bin


More information about the wine-devel mailing list