// Copyright 1998-2017 Epic Games, Inc. All Rights Reserved. namespace Tools.CrashReporter.CrashReportCommon { /// /// Descriptive class for the WER report data /// public class WERReportMetadata { /// Host operating system version information. public WERReportMetadataOSVersionInformation OSVersionInformation; /// Details about the process that spawned the process that crashed. public WERReportMetadataParentProcessInformation ParentProcessInformation; /// A set of up to ten key value pairs representing the signature of the crash. public WERReportMetadataProblemSignatures ProblemSignatures; /// Additional key value pairs containing information about the crash. public WERReportMetadataDynamicSignatures DynamicSignatures; /// Information about the system the crash occurred on. public WERReportMetadataSystemInformation SystemInformation; } /// /// The problem signature /// public class WERReportMetadataProblemSignatures { /// The type of event e.g. crash or hang. public string EventType = ""; /// The application name. public string Parameter0 = ""; /// The application version. public string Parameter1 = ""; /// The application timestamp. public string Parameter2 = ""; /// The faulting module name. public string Parameter3 = ""; /// The faulting module version. public string Parameter4 = ""; /// The faulting module timestamp. public string Parameter5 = ""; /// The exception code. public string Parameter6 = ""; /// The exception offset. public string Parameter7 = ""; /// The command line of the crashed process. public string Parameter8 = ""; /// Branch, BaseDir, and engine mode. public string Parameter9 = ""; /// A simple default constructor to allow Xml serialisation. public WERReportMetadataProblemSignatures() { } } /// /// The dynamic signature. /// public class WERReportMetadataDynamicSignatures { /// The long version of the operating system version. public string Parameter1 = ""; /// The LCID of the application. public string Parameter2 = ""; /// Generic parameter public string Parameter3 = ""; /// Generic parameter public string Parameter4 = ""; /// Generic parameter public string Parameter5 = ""; /// Generic parameter public string Parameter6 = ""; /// Generic parameter public string Parameter7 = ""; /// Generic parameter public string Parameter8 = ""; /// Generic parameter public string Parameter9 = ""; /// Whether the user allowed us to be contacted public bool bAllowToBeContacted = false; /// Deployment name of the crashed app, if any public string DeploymentName = ""; /// Was the "crash" a non-fatal event? public bool IsEnsure = false; /// Is the build version string public string BuildVersion = ""; /// Was the "crash" an assert or check that failed? public bool IsAssert = false; /// Crash type string public string CrashType = ""; /// A simple default constructor to allow Xml serialisation. public WERReportMetadataDynamicSignatures() { } } /// /// Details about the host OS the crash occurred on /// public class WERReportMetadataOSVersionInformation { /// The Windows version e.g. 6.1. public string WindowsNTVersion = ""; /// The build number and service pack. e.g. '7601 Service Pack 1'. public string Build = ""; /// The product name. public string Product = ""; /// The type of Windows operating system e.g. Professional. public string Edition = ""; /// The detailed version.e.g. '7601.17944.amd64fre.win7sp1_gdr.120830-0333'. public string BuildString = ""; /// The revision. public string Revision = ""; /// The flavor. e.g. 'Multiprocessor Free'. public string Flavor = ""; /// The processor architecture e.g. x64. public string Architecture = ""; /// The system language code. public string LCID = ""; /// A simple default constructor to allow Xml serialisation. public WERReportMetadataOSVersionInformation() { } } /// /// Details about the process that launched the crashed application. /// public class WERReportMetadataParentProcessInformation { /// The id of the parent process. public string ParentProcessId = ""; /// The full path of the parent process. public string ParentProcessPath = ""; /// The command line used to launch the parent process, including the executable name. public string ParentProcessCmdLine = ""; /// A simple default constructor to allow Xml serialisation. public WERReportMetadataParentProcessInformation() { } } /// /// Details about the machine the crash occurred on /// public class WERReportMetadataSystemInformation { /// A GUID for the machine. public string MID = ""; /// The manufacturer of the machine e.g. Hewlett Packard. public string SystemManufacturer = ""; /// The system product name. public string SystemProductName = ""; /// The current BIOS version. public string BIOSVersion = ""; /// A simple default constructor to allow Xml serialisation. public WERReportMetadataSystemInformation() { } } }