• Api Documentation
  • Source Code
Search Results for

    Show / Hide Table of Contents
    • SharpShellLink
      • Shortcut
    • SharpShellLink.Const
      • KNOWNFOLDERID
    • SharpShellLink.Flags
      • CSIDL
      • CommonNetworkRelativeLinkFlags
      • DriveType
      • FileAttributesFlags
      • FillAttributes
      • FontFamily
      • FontPitch
      • HotKeyFlags
      • LinkFlags
      • LinkInfoFlags
      • ModifierKeys
      • NetworkProviderType
      • ShowCommand
      • VirtualKeyCodes
    • SharpShellLink.PropertyStore
      • IntegerName
      • PropertyType
      • SerializedPropertyStorage
      • SerializedPropertyStore
      • SerializedPropertyValue
      • StringName
      • Structure
      • TypedPropertyValue
    • SharpShellLink.Structures
      • BlockSignature
      • CommonNetworkRelativeLink
      • ConsoleDataBlock
      • ConsoleFEDataBlock
      • CplLinkTargetIDList
      • DarwinDataBlock
      • EnvironmentVariableDataBlock
      • ExtraData
      • ExtraDataBlock
      • IDList
      • IconEnvironmentDataBlock
      • ItemID
      • KnownFolderDataBlock
      • LinkInfo
      • LinkTargetIDList
      • PropertyStoreDataBlock
      • ShellLinkHeader
      • ShimDataBlock
      • SpecialFolderDataBlock
      • StringData
      • Structure
      • TerminalBlock
      • TrackerDataBlock
      • VistaAndAboveIDListDataBlock
      • VolumeID

    Class DarwinDataBlock

    The DarwinDataBlock structure specifies an application identifier that can be used instead of a link target IDList to install an application when a shell link is activated.

    Inheritance
    object
    Structure
    ExtraDataBlock
    DarwinDataBlock
    Inherited Members
    ExtraDataBlock.ValidateHeaderBlockSignature(ref byte[])
    ExtraDataBlock.Validate(ref byte[], bool)
    Structure.Errors
    Structure.ValidateInputDataSize(int)
    Structure.ValidateHeaderBlockSize(ref byte[], bool)
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    Namespace: SharpShellLink.Structures
    Assembly: SharpShellLink.dll
    Syntax
    public class DarwinDataBlock : ExtraDataBlock

    Constructors

    | Edit this page View Source

    DarwinDataBlock()

    Constructor

    Declaration
    public DarwinDataBlock()
    | Edit this page View Source

    DarwinDataBlock(string)

    Constructor

    Declaration
    public DarwinDataBlock(string DarwinData)
    Parameters
    Type Name Description
    string DarwinData

    A NULL–terminated string, which specifies an application identifier.

    Properties

    | Edit this page View Source

    BlockSignature

    BlockSignature (4 bytes): A 32-bit, unsigned integer that specifies the signature of the DarwinDataBlock extra data section. This value MUST be 0xA0000006.

    Declaration
    public override BlockSignature BlockSignature { get; }
    Property Value
    Type Description
    BlockSignature
    Overrides
    ExtraDataBlock.BlockSignature
    | Edit this page View Source

    BlockSize

    BlockSize (4 bytes): A 32-bit, unsigned integer that specifies the size of the DarwinDataBlock structure. This value MUST be 0x00000314.

    Declaration
    public override uint BlockSize { get; }
    Property Value
    Type Description
    uint
    Overrides
    ExtraDataBlock.BlockSize
    | Edit this page View Source

    DarwinDataAnsi

    DarwinDataAnsi (260 bytes): A NULL–terminated string, defined by the system default code page, which specifies an application identifier. This field SHOULD be ignored.

    Declaration
    public string DarwinDataAnsi { get; set; }
    Property Value
    Type Description
    string
    | Edit this page View Source

    DarwinDataUnicode

    DarwinDataUnicode (520 bytes): An optional, NULL–terminated, Unicode string that specifies an application identifier.

    Declaration
    public string DarwinDataUnicode { get; set; }
    Property Value
    Type Description
    string
    | Edit this page View Source

    MinimumBlockSize

    MinimumBlockSize (4 bytes): A 32-bit, unsigned integer that specifies the minimum size of the DarwinDataBlock structure. This value MUST be 0x00000314

    Declaration
    public override uint MinimumBlockSize { get; }
    Property Value
    Type Description
    uint
    Overrides
    Structure.MinimumBlockSize

    Methods

    | Edit this page View Source

    FromByteArray(byte[])

    Create a ShellLinkHeader from a given byte array

    Declaration
    public static DarwinDataBlock FromByteArray(byte[] ba)
    Parameters
    Type Name Description
    byte[] ba

    The byte array

    Returns
    Type Description
    DarwinDataBlock

    A ShellLinkHeader object

    | Edit this page View Source

    GetBytes()

    Convert the Structure to a byte array

    Declaration
    public override byte[] GetBytes()
    Returns
    Type Description
    byte[]

    Byte array representation of the Structure

    Overrides
    Structure.GetBytes()
    | Edit this page View Source

    ToString()

    Returns a string that represents the current object.

    Declaration
    public override string ToString()
    Returns
    Type Description
    string

    A string that represents the current object.

    Overrides
    ExtraDataBlock.ToString()
    • Edit this page
    • View Source
    In this article
    Back to top Copyright (c) 2017 Securify B.V., 2026 Jérémy Ansel