<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="c:\program files (x86)\microsoft visual studio 12.0\team tools\static analysis tools\fxcop\Xml\CodeAnalysisReport.xsl"?>
<FxCopReport Version="12.0">
 <Targets>
  <Target Name="C:\Users\katharina.zeiringer\Desktop\Validators\Validator\CDAValidator\bin\Debug\CDAValidator.exe">
   <Modules>
    <Module Name="cdavalidator.exe">
     <Namespaces>
      <Namespace Name="System.Windows.Forms">
       <Types>
        <Type Name="MessageBoxEx" Kind="Class" Accessibility="Public" ExternallyVisible="True">
         <Members>
          <Member Name="#CallNextHookEx(System.IntPtr,System.Int32,System.IntPtr,System.IntPtr)" Kind="Method" Static="True" Accessibility="Public" ExternallyVisible="True">
           <Messages>
            <Message TypeName="MovePInvokesToNativeMethodsClass" Category="Microsoft.Design" CheckId="CA1060" Status="Active" Created="2015-09-01 11:29:18Z" FixCategory="Breaking">
             <Issue Certainty="95" Level="CriticalWarning">Because it is a P/Invoke method, 'MessageBoxEx.CallNextHookEx(IntPtr, int, IntPtr, IntPtr)' should be defined in a class named NativeMethods, SafeNativeMethods, or UnsafeNativeMethods.</Issue>
            </Message>
            <Message TypeName="PInvokesShouldNotBeVisible" Category="Microsoft.Interoperability" CheckId="CA1401" Status="Active" Created="2015-09-01 11:29:18Z" FixCategory="Breaking">
             <Issue Certainty="50" Level="CriticalError">Change the accessibility of P/Invoke 'MessageBoxEx.CallNextHookEx(IntPtr, int, IntPtr, IntPtr)' so that it is no longer visible from outside its assembly.</Issue>
            </Message>
           </Messages>
          </Member>
          <Member Name="#EndDialog(System.IntPtr,System.IntPtr)" Kind="Method" Static="True" Accessibility="Public" ExternallyVisible="True">
           <Messages>
            <Message TypeName="MovePInvokesToNativeMethodsClass" Category="Microsoft.Design" CheckId="CA1060" Status="Active" Created="2015-09-01 11:29:18Z" FixCategory="Breaking">
             <Issue Certainty="95" Level="CriticalWarning">Because it is a P/Invoke method, 'MessageBoxEx.EndDialog(IntPtr, IntPtr)' should be defined in a class named NativeMethods, SafeNativeMethods, or UnsafeNativeMethods.</Issue>
            </Message>
            <Message TypeName="PInvokesShouldNotBeVisible" Category="Microsoft.Interoperability" CheckId="CA1401" Status="Active" Created="2015-09-01 11:29:18Z" FixCategory="Breaking">
             <Issue Certainty="50" Level="CriticalError">Change the accessibility of P/Invoke 'MessageBoxEx.EndDialog(IntPtr, IntPtr)' so that it is no longer visible from outside its assembly.</Issue>
            </Message>
           </Messages>
          </Member>
          <Member Name="#GetWindowText(System.IntPtr,System.Text.StringBuilder,System.Int32)" Kind="Method" Static="True" Accessibility="Public" ExternallyVisible="True">
           <Messages>
            <Message TypeName="MovePInvokesToNativeMethodsClass" Category="Microsoft.Design" CheckId="CA1060" Status="Active" Created="2015-09-01 11:29:18Z" FixCategory="Breaking">
             <Issue Certainty="95" Level="CriticalWarning">Because it is a P/Invoke method, 'MessageBoxEx.GetWindowText(IntPtr, StringBuilder, int)' should be defined in a class named NativeMethods, SafeNativeMethods, or UnsafeNativeMethods.</Issue>
            </Message>
            <Message TypeName="PInvokesShouldNotBeVisible" Category="Microsoft.Interoperability" CheckId="CA1401" Status="Active" Created="2015-09-01 11:29:18Z" FixCategory="Breaking">
             <Issue Certainty="50" Level="CriticalError">Change the accessibility of P/Invoke 'MessageBoxEx.GetWindowText(IntPtr, StringBuilder, int)' so that it is no longer visible from outside its assembly.</Issue>
            </Message>
            <Message Id="1" TypeName="SpecifyMarshalingForPInvokeStringArguments" Category="Microsoft.Globalization" CheckId="CA2101" Status="Active" Created="2015-09-01 11:29:18Z" FixCategory="NonBreaking">
             <Issue Name="ParameterImplicitAnsi" Certainty="75" Level="Error">To reduce security risk, marshal parameter 'text' as Unicode, by setting DllImport.CharSet to CharSet.Unicode, or by explicitly marshaling the parameter as UnmanagedType.LPWStr. If you need to marshal this string as ANSI or system-dependent, specify MarshalAs explicitly, and set BestFitMapping=false; for added security, also set ThrowOnUnmappableChar=true.</Issue>
            </Message>
           </Messages>
          </Member>
          <Member Name="#GetWindowTextLength(System.IntPtr)" Kind="Method" Static="True" Accessibility="Public" ExternallyVisible="True">
           <Messages>
            <Message TypeName="MovePInvokesToNativeMethodsClass" Category="Microsoft.Design" CheckId="CA1060" Status="Active" Created="2015-09-01 11:29:18Z" FixCategory="Breaking">
             <Issue Certainty="95" Level="CriticalWarning">Because it is a P/Invoke method, 'MessageBoxEx.GetWindowTextLength(IntPtr)' should be defined in a class named NativeMethods, SafeNativeMethods, or UnsafeNativeMethods.</Issue>
            </Message>
            <Message TypeName="PInvokesShouldNotBeVisible" Category="Microsoft.Interoperability" CheckId="CA1401" Status="Active" Created="2015-09-01 11:29:18Z" FixCategory="Breaking">
             <Issue Certainty="50" Level="CriticalError">Change the accessibility of P/Invoke 'MessageBoxEx.GetWindowTextLength(IntPtr)' so that it is no longer visible from outside its assembly.</Issue>
            </Message>
           </Messages>
          </Member>
          <Member Name="#SendMessage(System.IntPtr,System.Int32,System.IntPtr,System.IntPtr)" Kind="Method" Static="True" Accessibility="Public" ExternallyVisible="True">
           <Messages>
            <Message TypeName="MovePInvokesToNativeMethodsClass" Category="Microsoft.Design" CheckId="CA1060" Status="Active" Created="2015-09-01 11:29:18Z" FixCategory="Breaking">
             <Issue Certainty="95" Level="CriticalWarning">Because it is a P/Invoke method, 'MessageBoxEx.SendMessage(IntPtr, int, IntPtr, IntPtr)' should be defined in a class named NativeMethods, SafeNativeMethods, or UnsafeNativeMethods.</Issue>
            </Message>
            <Message TypeName="PInvokesShouldNotBeVisible" Category="Microsoft.Interoperability" CheckId="CA1401" Status="Active" Created="2015-09-01 11:29:18Z" FixCategory="Breaking">
             <Issue Certainty="50" Level="CriticalError">Change the accessibility of P/Invoke 'MessageBoxEx.SendMessage(IntPtr, int, IntPtr, IntPtr)' so that it is no longer visible from outside its assembly.</Issue>
            </Message>
           </Messages>
          </Member>
          <Member Name="#SetTimer(System.IntPtr,System.UIntPtr,System.UInt32,System.Windows.Forms.MessageBoxEx+TimerProc)" Kind="Method" Static="True" Accessibility="Public" ExternallyVisible="True">
           <Messages>
            <Message TypeName="MovePInvokesToNativeMethodsClass" Category="Microsoft.Design" CheckId="CA1060" Status="Active" Created="2015-09-01 11:29:18Z" FixCategory="Breaking">
             <Issue Certainty="95" Level="CriticalWarning">Because it is a P/Invoke method, 'MessageBoxEx.SetTimer(IntPtr, UIntPtr, uint, MessageBoxEx.TimerProc)' should be defined in a class named NativeMethods, SafeNativeMethods, or UnsafeNativeMethods.</Issue>
            </Message>
            <Message TypeName="PInvokesShouldNotBeVisible" Category="Microsoft.Interoperability" CheckId="CA1401" Status="Active" Created="2015-09-01 11:29:18Z" FixCategory="Breaking">
             <Issue Certainty="50" Level="CriticalError">Change the accessibility of P/Invoke 'MessageBoxEx.SetTimer(IntPtr, UIntPtr, uint, MessageBoxEx.TimerProc)' so that it is no longer visible from outside its assembly.</Issue>
            </Message>
           </Messages>
          </Member>
          <Member Name="#SetWindowsHookEx(System.Int32,System.Windows.Forms.MessageBoxEx+HookProc,System.IntPtr,System.Int32)" Kind="Method" Static="True" Accessibility="Public" ExternallyVisible="True">
           <Messages>
            <Message TypeName="MovePInvokesToNativeMethodsClass" Category="Microsoft.Design" CheckId="CA1060" Status="Active" Created="2015-09-01 11:29:18Z" FixCategory="Breaking">
             <Issue Certainty="95" Level="CriticalWarning">Because it is a P/Invoke method, 'MessageBoxEx.SetWindowsHookEx(int, MessageBoxEx.HookProc, IntPtr, int)' should be defined in a class named NativeMethods, SafeNativeMethods, or UnsafeNativeMethods.</Issue>
            </Message>
            <Message TypeName="PInvokesShouldNotBeVisible" Category="Microsoft.Interoperability" CheckId="CA1401" Status="Active" Created="2015-09-01 11:29:18Z" FixCategory="Breaking">
             <Issue Certainty="50" Level="CriticalError">Change the accessibility of P/Invoke 'MessageBoxEx.SetWindowsHookEx(int, MessageBoxEx.HookProc, IntPtr, int)' so that it is no longer visible from outside its assembly.</Issue>
            </Message>
           </Messages>
          </Member>
          <Member Name="#UnhookWindowsHookEx(System.IntPtr)" Kind="Method" Static="True" Accessibility="Public" ExternallyVisible="True">
           <Messages>
            <Message TypeName="MovePInvokesToNativeMethodsClass" Category="Microsoft.Design" CheckId="CA1060" Status="Active" Created="2015-09-01 11:29:18Z" FixCategory="Breaking">
             <Issue Certainty="95" Level="CriticalWarning">Because it is a P/Invoke method, 'MessageBoxEx.UnhookWindowsHookEx(IntPtr)' should be defined in a class named NativeMethods, SafeNativeMethods, or UnsafeNativeMethods.</Issue>
            </Message>
            <Message TypeName="PInvokesShouldNotBeVisible" Category="Microsoft.Interoperability" CheckId="CA1401" Status="Active" Created="2015-09-01 11:29:18Z" FixCategory="Breaking">
             <Issue Certainty="50" Level="CriticalError">Change the accessibility of P/Invoke 'MessageBoxEx.UnhookWindowsHookEx(IntPtr)' so that it is no longer visible from outside its assembly.</Issue>
            </Message>
           </Messages>
          </Member>
         </Members>
        </Type>
        <Type Name="MessageBoxEx+CWPRETSTRUCT" Kind="Struct" Accessibility="Public" ExternallyVisible="True">
         <Members>
          <Member Name="#hwnd" Kind="Field" Static="False" Accessibility="Public" ExternallyVisible="True">
           <Messages>
            <Message TypeName="PointersShouldNotBeVisible" Category="Microsoft.Security" CheckId="CA2111" Status="Active" Created="2015-09-01 11:29:18Z" FixCategory="Breaking">
             <Issue Certainty="75" Level="CriticalError">Make 'MessageBoxEx.CWPRETSTRUCT.hwnd' private.</Issue>
            </Message>
           </Messages>
          </Member>
          <Member Name="#lParam" Kind="Field" Static="False" Accessibility="Public" ExternallyVisible="True">
           <Messages>
            <Message TypeName="PointersShouldNotBeVisible" Category="Microsoft.Security" CheckId="CA2111" Status="Active" Created="2015-09-01 11:29:18Z" FixCategory="Breaking">
             <Issue Certainty="75" Level="CriticalError">Make 'MessageBoxEx.CWPRETSTRUCT.lParam' private.</Issue>
            </Message>
           </Messages>
          </Member>
          <Member Name="#lResult" Kind="Field" Static="False" Accessibility="Public" ExternallyVisible="True">
           <Messages>
            <Message TypeName="PointersShouldNotBeVisible" Category="Microsoft.Security" CheckId="CA2111" Status="Active" Created="2015-09-01 11:29:18Z" FixCategory="Breaking">
             <Issue Certainty="75" Level="CriticalError">Make 'MessageBoxEx.CWPRETSTRUCT.lResult' private.</Issue>
            </Message>
           </Messages>
          </Member>
          <Member Name="#wParam" Kind="Field" Static="False" Accessibility="Public" ExternallyVisible="True">
           <Messages>
            <Message TypeName="PointersShouldNotBeVisible" Category="Microsoft.Security" CheckId="CA2111" Status="Active" Created="2015-09-01 11:29:18Z" FixCategory="Breaking">
             <Issue Certainty="75" Level="CriticalError">Make 'MessageBoxEx.CWPRETSTRUCT.wParam' private.</Issue>
            </Message>
           </Messages>
          </Member>
         </Members>
        </Type>
       </Types>
      </Namespace>
     </Namespaces>
    </Module>
   </Modules>
  </Target>
 </Targets>
 <Rules>
  <Rule TypeName="MovePInvokesToNativeMethodsClass" Category="Microsoft.Design" CheckId="CA1060">
   <Name>Move P/Invokes to NativeMethods class</Name>
   <Description>This type contains members with the DllImport attribute. Members with the DllImport attribute should be contained in classes named NativeMethods, SafeNativeMethods, or UnsafeNativeMethods.</Description>
   <Resolution Name="Default">Because it is a P/Invoke method, {0} should be defined in a class named NativeMethods, SafeNativeMethods, or UnsafeNativeMethods.</Resolution>
   <Owner />
   <Url>http://msdn.microsoft.com/library/ms182161.aspx</Url>
   <Email>[none]</Email>
   <MessageLevel Certainty="95">CriticalWarning</MessageLevel>
   <File Name="designrules.dll" Version="12.0.0.0" />
  </Rule>
  <Rule TypeName="PInvokesShouldNotBeVisible" Category="Microsoft.Interoperability" CheckId="CA1401">
   <Name>P/Invokes should not be visible</Name>
   <Description>Interop layer should not be public. The DllImport attribute should not be applied to publicly accessible members (public or protected).</Description>
   <Resolution Name="Default">Change the accessibility of P/Invoke {0} so that it is no longer visible from outside its assembly.</Resolution>
   <Owner />
   <Url>http://msdn.microsoft.com/library/ms182209.aspx</Url>
   <Email>[none]</Email>
   <MessageLevel Certainty="50">CriticalError</MessageLevel>
   <File Name="interoperabilityrules.dll" Version="12.0.0.0" />
  </Rule>
  <Rule TypeName="PointersShouldNotBeVisible" Category="Microsoft.Security" CheckId="CA2111">
   <Name>Pointers should not be visible</Name>
   <Description>IntPtr and UIntPtr fields should be declared as private. Exposing non-private pointers can cause a security weakness.</Description>
   <Resolution Name="Default">Make {0} private.</Resolution>
   <Owner />
   <Url>http://msdn.microsoft.com/library/ms182306.aspx</Url>
   <Email>[none]</Email>
   <MessageLevel Certainty="75">CriticalError</MessageLevel>
   <File Name="securityrules.dll" Version="12.0.0.0" />
  </Rule>
  <Rule TypeName="SpecifyMarshalingForPInvokeStringArguments" Category="Microsoft.Globalization" CheckId="CA2101">
   <Name>Specify marshaling for P/Invoke string arguments</Name>
   <Description>When marshaling strings as ANSI (or as Auto on Win9x), some characters may be changed. If best-fit mapping is on, strings that appear different in Unicode will be marshaled to identical ANSI strings, which may lead to incorrect security decisions. Turning best-fit mapping off reduces this risk, as all characters without equivalents are mapped to '?'. Also, note that CharSet.Ansi is the default setting for all string marshaling; Unicode marshaling must be specified explicitly, either as a CharSet setting of DllImport or StructLayout, or as a MarshalAs attribute with a Unicode (or system-dependent) UnmanagedType.</Description>
   <Resolution Name="ParameterImplicitAnsi">To reduce security risk, marshal parameter {0} as Unicode, by setting DllImport.CharSet to CharSet.Unicode, or by explicitly marshaling the parameter as UnmanagedType.LPWStr. If you need to marshal this string as ANSI or system-dependent, specify MarshalAs explicitly, and set BestFitMapping=false; for added security, also set ThrowOnUnmappableChar=true.</Resolution>
   <Owner />
   <Url>http://msdn.microsoft.com/library/ms182319.aspx</Url>
   <Email>[none]</Email>
   <MessageLevel Certainty="75">Error</MessageLevel>
   <File Name="globalizationrules.dll" Version="12.0.0.0" />
  </Rule>
 </Rules>
 <Localized>
  <String Key="Category">Category</String>
  <String Key="Certainty">Certainty</String>
  <String Key="CollapseAll">Collapse All</String>
  <String Key="CheckId">Check Id</String>
  <String Key="Error">Error</String>
  <String Key="Errors">error(s)</String>
  <String Key="ExpandAll">Expand All</String>
  <String Key="Help">Help</String>
  <String Key="Line">Line</String>
  <String Key="Messages">message(s)</String>
  <String Key="LocationNotStoredInPdb">[Location not stored in Pdb]</String>
  <String Key="Project">Project</String>
  <String Key="Resolution">Resolution</String>
  <String Key="Rule">Rule</String>
  <String Key="RuleFile">Rule File</String>
  <String Key="RuleDescription">Rule Description</String>
  <String Key="Source">Source</String>
  <String Key="Status">Status</String>
  <String Key="Target">Target</String>
  <String Key="Warning">Warning</String>
  <String Key="Warnings">warning(s)</String>
  <String Key="ReportTitle">Code Analysis Report</String>
 </Localized>
</FxCopReport>
