BUG: WritePrivateProfileString Requires Delete Access on INI

ID: Q175033

The information in this article applies to:

SYMPTOMS

WritePrivateProfileString() fails to update the target INI file when the user's permissions on the file do not include "Delete" access. GetLastError() returns ACCESS_DENIED.

CAUSE

WritePrivateProfileString() invariably requests "Delete" access when attempting to open the INI file.

RESOLUTION

There are no workarounds short of taking direct control of the file I/O.

STATUS

Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article.

MORE INFORMATION

Steps to Reproduce Behavior

1. Set access for the subdirectory containing the .INI file to (RWX)(RW).

2. Make certain that access on the .INI file is set to (RW).

   NOTE: You will not be able to delete the file.

3. Attempts to write to the .INI file with WriteProfileString() will fail.

4. Set access to the .INI file to (RWD).

5. WritePrivateProfileString() succeeds.

Additional query words:

Keywords          : kbNTOS400bug kbSysSettings kbGrpUser 
Issue type        : kbbug

Last Reviewed: December 26, 1998