anchor.diff:   https://msdn.microsoft.com/en-us/library/windows/desktop/aa383751.aspx
   
    Additionally - LPCWSTR stands for "const PWideChar" and
  -    WideString stands for BSTR ( OLE/COM "Basic String")
  +    WideString stands for BSTR ( OLE/COM "Basic String" )
    They are not the same, though kind of worked due to BSTR "implementation details".
    However that incurred redundant datatype casting UnicodeString -> WideString
       if nothing else. Could be a nice hack for pre-Unicode Delphi though.
  
positive.code:     XmlReadState_Closed	= 4
      );
  
    XmlConformanceLevel = (
      XmlConformanceLevel_Auto	= 0,
      XmlConformanceLevel_Fragment	= 1,
      XmlConformanceLevel_Document	= 2
      );
  
  {$MINENUMSIZE 1}
  
  (**  Win32/Win64 properties compatibility
  
   https://msdn.microsoft.com/en-us/library/ms752842.aspx
  
negative.code:                                       const Value: PWideChar; const ValueLength: Cardinal ): HRESULT; stdcall;
  
          function WriteCData(const pwszText: PWideChar): HRESULT; stdcall;
          function WriteCharEntity(const wch: WideChar):  HRESULT; stdcall;
          function WriteChars(const Chars: PWideChar; const Count: Cardinal): HRESULT; stdcall;
  
          function WriteComment(const pwszComment: PWideChar): HRESULT; stdcall;
  