Last modified: July 23, 2011

Applies to: Outlook

Modifies a service provider's password without displaying a user interface. This method is optionally supported in status objects that service providers implement.

HRESULT ChangePassword(
  LPSTR lpOldPass,
  LPSTR lpNewPass,
  ULONG ulFlags


[in] A pointer to the old password.


[in] A pointer to the new password.


[in] A bitmask of flags that controls the format of the passwords. The following flag can be set:


The passwords are in Unicode format. If the MAPI_UNICODE flag is not set, the passwords are in ANSI format.


The password modification was successful.


The old password pointed to by lpOldPass is invalid.


The status object does not support this operation, as indicated by the absence of the STATUS_CHANGE_PASSWORD flag in the status object's PR_RESOURCE_METHODS (PidTagResourceMethods) property.

Not all status objects support the IMAPIStatus::ChangePassword method. It is supported only by service providers that require clients to enter a password. None of the status objects that MAPI implements support the password change operation.

ChangePassword modifies a password programmatically, without user interaction.

Remote transport providers implement ChangePassword as specified here. There are no special considerations.