def version_binary(self):
        '''
        Return version number which is stored in binary format.

        Returns:
            str: <major 0-255>.<minior 0-255>.<build 0-65535> or None if not found
        '''
        # Under MSI 'Version' is a 'REG_DWORD' which then sets other registry
        # values like DisplayVersion to x.x.x to the same value.
        # However not everyone plays by the rules, so we need to check first.
        # version_binary_data will be None if the reg value does not exist.
        # Some installs set 'Version' to REG_SZ (string) which is not
        # the MSI standard
        try:
            item_value, item_type = self.__reg_query_value(self.__reg_uninstall_handle, 'version')
        except pywintypes.error as exc:  # pylint: disable=no-member
            if exc.winerror == winerror.ERROR_FILE_NOT_FOUND:
                # Not Found
                return '', ''

        version_binary_text = ''
        version_src = ''
        if item_value:
            if item_type == win32con.REG_DWORD:
                if isinstance(item_value, six.integer_types):
                    version_binary_raw = item_value
                if version_binary_raw:
                    # Major.Minor.Build
                    version_binary_text = '{0}.{1}.{2}'.format(
                        version_binary_raw >> 24 & 0xff,
                        version_binary_raw >> 16 & 0xff,
                        version_binary_raw & 0xffff)
                    version_src = 'binary-version'

            elif (item_type == win32con.REG_SZ and
                    isinstance(item_value, six.string_types) and
                    self.__version_pattern.match(item_value) is not None):
                # Hey, version should be a int/REG_DWORD, an installer has set
                # it to a string
                version_binary_text = item_value.strip(' ')
                version_src = 'binary-version (string)'

        return (version_binary_text, version_src)
Return version number which is stored in binary format.

        Returns:
            str: <major 0-255>.<minior 0-255>.<build 0-65535> or None if not found