CryptMsgDuplicate function (wincrypt.h)

The CryptMsgDuplicate function duplicates a cryptographic message handle by incrementing its reference count.


HCRYPTMSG CryptMsgDuplicate(
  [in] HCRYPTMSG hCryptMsg


[in] hCryptMsg

Handle of the cryptographic message to be duplicated. Duplication is done by incrementing the reference count of the message. A copy of the message is not made.

Return value

The returned handle is the same as the handle input. A copy of the message is not created. When you have finished using the duplicated message handle, decrease the reference count by calling the CryptMsgClose function.


CryptMsgDuplicate is used to increase the reference count on an HCRYPTMSG handle so that multiple calls to CryptMsgClose are required to actually release the handle.


For an example that uses this function, see Example C Program: Encoding and Decoding a Hashed Message.


Requirement Value
Minimum supported client Windows XP [desktop apps | UWP apps]
Minimum supported server Windows Server 2003 [desktop apps | UWP apps]
Target Platform Windows
Header wincrypt.h
Library Crypt32.lib
DLL Crypt32.dll

See also


Low-level Message Functions

Simplified Message Functions