Can I use mingw headers instead? I see that we already have some of these (mprerror.h, fltdefs.h, several more in msvcrt directory), and they have the header I need ( http://sourceforge.net/apps/trac/mingw-w64/browser/experimental/headers_addi... ).
2013/5/1 Juan Lang juan.lang@gmail.com
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 djelinski1@gmail.comwrote:
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 julliard@winehq.org
Daniel Jeliński djelinski1@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 julliard@winehq.org