[PATCH v2 4/4] include: Add IXMLHTTPRequest2/3 interfaces

Nikolay Sivov nsivov at codeweavers.com
Thu Sep 3 07:53:23 CDT 2020



On 9/3/20 1:28 PM, Alistair Leslie-Hughes wrote:
> +typedef struct tagXHR_COOKIE
> +{
> +    [ref, string]    WCHAR *url;
> +    [ref, string]    WCHAR *name;
> +    [unique, string] WCHAR *value;
> +    [unique, string] WCHAR *p3_policy;
> +    FILETIME expire_time;
> +    DWORD flags;
> +} XHR_COOKIE;
Fields names do not match public definition.

> +interface IXMLHTTPRequest3 : IXMLHTTPRequest2
> +{
> +    HRESULT SetClientCertificate([in] DWORD hash_size, [in] const BYTE *hash, [in] const WCHAR *pin);
> +};
No need to terminate interface block like that.

> +[
> +    object,
> +    uuid(A44A9299-E321-40DE-8866-341B41669162),
> +    helpstring("IXMLHTTPRequest2Callback Interface"),
> +    pointer_default(ref)
> +]
Let's make uuid lowercase for consistency.
> +[
> +    helpstring("Free Threaded XML HTTP Request class 6.0"),
> +    progid("Msxml2.FreeThreadedXMLHTTP60.6.0"),
> +    threading(both),
> +    uuid(88d96a09-f192-11d4-a65f-0040963251e5)
> +]
> +coclass FreeThreadedXMLHTTP60
> +{
> +    [default] interface IXMLHTTPRequest2;
> +}
> +
Public header does not have progid() for this coclass, and does not have
default attribute.

Missing marshaling attributes for methods arguments are still missing in v2.




More information about the wine-devel mailing list