Class CliStreamUserStrings

  • All Implemented Interfaces:
    PeMarkupable, StructConverter

    public class CliStreamUserStrings
    extends CliStreamBlob
    The User Strings stream contains blobs of 16-bit Unicode strings. When the stream is present, the first entry is always the byte 0x00. This stream may contain garbage in its unreachable parts.
    • Constructor Detail

      • CliStreamUserStrings

        public CliStreamUserStrings​(CliStreamHeader header,
                                    long fileOffset,
                                    int rva,
                                    BinaryReader reader)
                             throws java.io.IOException
        Creates a new CliStreamUserStrings.
        Parameters:
        header - The stream header associated with this stream.
        fileOffset - The file offset where this stream starts.
        rva - The relative virtual address where this stream starts.
        reader - A reader that is set to the start of the stream.
        Throws:
        java.io.IOException - if there is a problem reading the stream.
    • Method Detail

      • getName

        public static java.lang.String getName()
        Gets the name of this stream.
        Returns:
        The name of this stream.
      • getUserString

        public java.lang.String getUserString​(int index)
        Gets the user string at the given index.
        Parameters:
        index - The index of the user string to get.
        Returns:
        The user string at the given index. Could be null if the index was invalid or there was a problem reading the user string.
      • toDataType

        public DataType toDataType()
                            throws DuplicateNameException,
                                   java.io.IOException
        Description copied from interface: StructConverter
        Returns a structure datatype representing the contents of the implementor of this interface.

        For example, given:

         class A {
             int foo;
             double bar;
         }
         

        The return value should be a structure data type with two data type components; an INT and a DOUBLE. The structure should contain field names and, if possible, field comments.

        Specified by:
        toDataType in interface StructConverter
        Overrides:
        toDataType in class CliStreamBlob
        Returns:
        returns a structure datatype representing the implementor of this interface
        Throws:
        DuplicateNameException - when a datatype of the same name already exists
        java.io.IOException
        See Also:
        StructureDataType