Type it yourself. Refer to MSDN, public descriptions, and publicly available headers, but don't copy/paste from any of them. --Juan
On Wed, May 1, 2013 at 3:56 AM, Daniel Jeliński <djelins...@gmail.com>wrote: > It probably is, I downloaded it somewhere. Had to remove some stuff to get > it to compile. I think saw some mail saying that headers aren't copyrighted. > > Anyway. What's the correct approach here? I mean, I clearly shouldn't add > anything, and removing stuff also doesn't look like the right idea. Well I > could remove comments, but that's hardly innovative. What's the usual way > to do it? > > > 2013/5/1 Alexandre Julliard <julli...@winehq.org> > >> Daniel Jeliński <djelins...@gmail.com> writes: >> >> > +import "unknwn.idl"; >> > + >> > +interface ITransaction; >> > +interface ITransactionDispenser; >> > +interface ITransactionOptions; >> > +interface ITransactionOutcomeEvents; >> > +interface ITransactionCompletionEvents; >> > + >> > >> +/*========================================================================== >> > + * Transaction related types >> > + >> *==========================================================================*/ >> > + >> > +[local,pointer_default(unique)] >> > +interface BasicTransactionTypes >> > + { >> > + >> > + typedef struct BOID { >> > + byte rgb[16]; >> > + } BOID; >> > + >> > + cpp_quote("#define BOID_NULL (*((BOID*)(&IID_NULL)))") >> > + >> > + /* change the following two line together */ >> > + cpp_quote("#ifndef MAX_TRAN_DESC_DEFINED") /* conflicts >> with uimsg.h. This is temporary work around */ >> > + cpp_quote("#define MAX_TRAN_DESC_DEFINED") >> > + typedef enum TX_MISC_CONSTANTS >> > + { >> > + MAX_TRAN_DESC = 40 >> > + } TX_MISC_CONSTANTS; >> > + cpp_quote("#endif") >> > + >> > + /* Unit Of Work. */ >> > + >> > + typedef BOID XACTUOW; >> > + >> > + /* Data type for isolation level values. */ >> > + >> > + typedef LONG ISOLEVEL; >> > + >> > + /* Constants that specifiy isolation level of a transaction. */ >> > + >> > + typedef enum ISOLATIONLEVEL { >> > + ISOLATIONLEVEL_UNSPECIFIED = 0xFFFFFFFF, >> > + ISOLATIONLEVEL_CHAOS = 0x00000010, >> > + ISOLATIONLEVEL_READUNCOMMITTED = 0x00000100, >> > + ISOLATIONLEVEL_BROWSE = 0x00000100, /* Synonym for >> _READUNCOMITTED */ >> > + ISOLATIONLEVEL_CURSORSTABILITY = 0x00001000, >> > + ISOLATIONLEVEL_READCOMMITTED = 0x00001000, /* Synonym for >> _CURSORSTABILITY */ >> > + ISOLATIONLEVEL_REPEATABLEREAD = 0x00010000, >> > + ISOLATIONLEVEL_SERIALIZABLE = 0x00100000, >> > + ISOLATIONLEVEL_ISOLATED = 0x00100000, /* Synonym for >> _SERIALIZABLE */ >> > + } ISOLATIONLEVEL; >> > + >> > + /* Transaction information structure, used in ITransaction */ >> > + >> > + typedef struct XACTTRANSINFO { >> > + XACTUOW uow; /* The current unit of >> work */ >> > + ISOLEVEL isoLevel; /* The isolation level >> for the current UOW */ >> > + ULONG isoFlags; /* Values from ISOFLAG >> enumeration */ >> > + DWORD grfTCSupported; /* Flags indicating >> capabilities */ >> > + DWORD grfRMSupported; /* ... of this >> transaction wrt */ >> > + DWORD grfTCSupportedRetaining; /* ... >> parameters to Commit */ >> > + DWORD grfRMSupportedRetaining; /* ... */ >> > + } XACTTRANSINFO; >> > + >> > + typedef struct XACTSTATS { >> > + ULONG cOpen; /* The number of currently >> extant transactions. */ >> > + ULONG cCommitting; /* The number of transactions >> which are proceding towards committing. */ >> > + ULONG cCommitted; /* The number of transactions >> that are have been committed. */ >> > + ULONG cAborting; /* The number of transactions >> which are in the process of aborting. */ >> > + ULONG cAborted; /* The number of transactions >> that are have been aborted. */ >> > + ULONG cInDoubt; /* The number of transactions >> which are presently in doubt. */ >> > + ULONG cHeuristicDecision; /* The number of transactions >> that have completed by heuristic decision. */ >> > + FILETIME timeTransactionsUp; /* The amount of time that >> this transaction service has been up. */ >> > + } XACTSTATS; >> >> This is clearly a straight copy of the SDK header. You can't do that. >> >> -- >> Alexandre Julliard >> julli...@winehq.org >> > > > > >