Setupapi Win16/32 (Again) and PSDK porting fixes

Gregory M. Turner gmturner007 at ameritech.net
Sat Oct 18 15:04:52 CDT 2003


On Saturday 18 October 2003 02:15 pm, Gregory M. Turner wrote:
> On Saturday 18 October 2003 01:57 pm, Steven Edwards wrote:
> > With this
> > patch all of the objects for setupapi.dll can be built on
> > MS_VC with the PSDK. There are a few minor issues but nothing
> > to major
>
> doesn't this:
>
> -typedef struct _CABINET_INFOA {
> +typedef struct _CABINET_INFO_A {
>    PCSTR CabinetPath;
>    PCSTR CabinetFile;
>    PCSTR DiskName;
>    USHORT SetId;
>    USHORT CabinetNumber;
> -} CABINET_INFOA, *PCABINET_INFOA;
> +} CABINET_INFO_A, *PCABINET_INFO_A;
>
> -typedef struct _CABINET_INFOW {
> +typedef struct _CABINET_INFO_W {
>    PCWSTR CabinetPath;
>    PCWSTR CabinetFile;
>    PCWSTR DiskName;
>    USHORT SetId;
>    USHORT CabinetNumber;
> -} CABINET_INFOW, *PCABINET_INFOW;
> +} CABINET_INFO_W, *PCABINET_INFO_W;
>
> mean we should do this:
>
> -DECL_WINELIB_TYPE_AW(CABINET_INFO);
> -DECL_WINELIB_TYPE_AW(PCABINET_INFO);
> +DECL_WINELIB_TYPE_AW(CABINET_INFO_);
> +DECL_WINELIB_TYPE_AW(PCABINET_INFO_);
>
> ?

Hmm, now that I think about it, for full compatibility with winelib, maybe we 
require something like:

typedef stuct ... { ... } CABINET_INFO_W, CABINET_INFOW;
typedef struct ... { ... } CABINET_INFO_A, CABINET_INFOA;
DECL_WINELIB_TYPE_AW(CABINET_INFO_); /* probably unnecessary */
DECL_WINELIB_TYPE_AW(CABINET_INFO);

and likewise for the pointer types.  yucky.

The problem, I guess, is that wine is specifically naming the A/W types, 
whereas most other proggies would just use the automagical ones... any idea 
why wine isn't adding an underscore in DECL_WINELIB_TYPE_AW?  Isn't that the 
standard MS convention?

-- 
gmt

"class 'SfxPoolCancelManager' only defines a
 private destructor and has no friends"
   -- gcc, resorting to unnecessary character attacks




More information about the wine-devel mailing list