virtual L_INT LAnnAutomation::GetSecondaryMetafile(phMetafile)
Retrieves the metafile handle associated with an automation object when it is in the decryptor state.
Pointer to a variable to be updated with the handle to a metafile.
| Value | Meaning |
|---|---|
| SUCCESS | The function was successful. |
| < 1 | An error occurred. Refer to Return Codes. |
The automation object has two states:
Each state is displayed with its own metafile. Use this function to retrieve the current metafile for an automation object in a decryptor state. The default image is shown in the figure below:
If this function is successful, the address pointed to by phMetafile will be updated with the metafile handle.
Use the LAnnAutomation::GetMetafile function to retrieve the current metafile for an automation object in an encryptor state.
Win32, x64.
// This example swaps the metafiles for the 'encrypt' and 'decrypt' state of an encryptor.
L_INT LAnnAutomation_GetSecondaryMetafileExample(LAnnAutomation *pLAutomation){L_INT nRet;HMETAFILE hMetafile1=0;HMETAFILE hMetafile2=0;L_BOOL bEncryptorOriginal;ANNENCRYPTOPTIONS EncryptOptions;L_UINT uObjectType;uObjectType = pLAutomation->GetType();if (uObjectType != ANNOBJECT_ENCRYPT){MessageBox(NULL, TEXT("This object is not an encryptor."), TEXT("Error"), MB_OK);return 0;}HANNOBJECT obj = pLAutomation->GetHandle();LAnnEncrypt MyAnnEncrypt(obj);nRet = MyAnnEncrypt.GetMetafile(&hMetafile1);if(nRet != SUCCESS)return nRet;nRet = MyAnnEncrypt.GetSecondaryMetafile(&hMetafile2);if(nRet != SUCCESS)return nRet;memset(&EncryptOptions, 0, sizeof(ANNENCRYPTOPTIONS));EncryptOptions.uStructSize = sizeof(ANNENCRYPTOPTIONS);EncryptOptions.uFlags = ANNENCRYPT_ALL;nRet = MyAnnEncrypt.GetEncryptOptions(&EncryptOptions);if(nRet != SUCCESS)return nRet;bEncryptorOriginal = EncryptOptions.bEncryptor;// Set state to encryptor, and set encryptor metafileEncryptOptions.uFlags = ANNENCRYPT_TYPE;EncryptOptions.bEncryptor = TRUE;nRet = MyAnnEncrypt.SetEncryptOptions(&EncryptOptions, 0);if(nRet != SUCCESS)return nRet;nRet = MyAnnEncrypt.SetMetafile(hMetafile2, ANNMETAFILE_USER, 0);if(nRet != SUCCESS)return nRet;// Set state to decryptor, and set decryptor metafileEncryptOptions.bEncryptor = FALSE;nRet = MyAnnEncrypt.SetEncryptOptions(&EncryptOptions, 0);if(nRet != SUCCESS)return nRet;nRet = MyAnnEncrypt.SetMetafile(hMetafile1, ANNMETAFILE_USER, 0);if(nRet != SUCCESS)return nRet;// Set encryptor to original stateEncryptOptions.bEncryptor = bEncryptorOriginal;nRet = MyAnnEncrypt.SetEncryptOptions(&EncryptOptions, 0);if(nRet != SUCCESS)return nRet;return SUCCESS;}
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document
