internal static uint GetProfileInfoSize(LCMSProfileHandle hProfile, LCMSEnums.ProfileInfoType infoType)
 {
     if (IntPtr.Size == 8)
     {
         return(LCMS_64.GetColorProfileInfoSize(hProfile, infoType));
     }
     else
     {
         return(LCMS_86.GetColorProfileInfoSize(hProfile, infoType));
     }
 }
        internal static string GetProfileInfo(LCMSProfileHandle hProfile, LCMSEnums.ProfileInfoType infoType, uint bufferSize)
        {
            if (bufferSize > 0U)
            {
                uint          result;
                StringBuilder buffer = new StringBuilder((int)bufferSize);

                if (IntPtr.Size == 8)
                {
                    result = LCMS_64.GetColorProfileInfo(hProfile, infoType, buffer, bufferSize);
                }
                else
                {
                    result = LCMS_86.GetColorProfileInfo(hProfile, infoType, buffer, bufferSize);
                }

                if (result > 0U)
                {
                    return(buffer.ToString());
                }
            }

            return(string.Empty);
        }
 internal static extern uint GetColorProfileInfo(
     LCMSProfileHandle hProfile,
     LCMSEnums.ProfileInfoType infoType,
     [Out()] StringBuilder buffer,
     uint bufferSize
     );
 internal static extern uint GetColorProfileInfoSize(LCMSProfileHandle hProfile, LCMSEnums.ProfileInfoType infoType);