MSI: add property IDs for MSI summary information (RESEND)

Mike McCormack mike at codeweavers.com
Wed Mar 16 10:55:01 CST 2005


This patch includes workarounds for redefinition of PID_DICTIONARY, 
PID_CODEPAGE and PID_SECURITY.

Mike


ChangeLog:
* add property IDs for MSI summary information
-------------- next part --------------
Index: include/propidl.idl
===================================================================
RCS file: /home/wine/wine/include/propidl.idl,v
retrieving revision 1.2
diff -u -p -r1.2 propidl.idl
--- include/propidl.idl	10 Mar 2005 11:14:59 -0000	1.2
+++ include/propidl.idl	16 Mar 2005 16:52:57 -0000
@@ -22,6 +22,25 @@ import "objidl.idl";
 import "oaidl.idl";
 
 
+/*
+ * Windows SDK braindamage alert
+ *
+ * PID_DICTIONARY and PID_CODEPAGE are defined by msidefs.h too
+ * PID_SECURITY is defined in msidefs.h with a different value!
+ * So these need to be undefined first.
+ */
+cpp_quote("#ifdef PID_DICTIONARY");
+cpp_quote("#undef PID_DICTIONARY");
+cpp_quote("#endif");
+
+cpp_quote("#ifdef PID_CODEPAGE");
+cpp_quote("#undef PID_CODEPAGE");
+cpp_quote("#endif");
+
+cpp_quote("#ifdef PID_SECURITY");
+cpp_quote("#undef PID_SECURITY");
+cpp_quote("#endif");
+
 /******************** Property Storage ********************/
 
 interface IEnumSTATPROPSTG;
Index: include/msidefs.h
===================================================================
RCS file: /home/wine/wine/include/msidefs.h,v
retrieving revision 1.4
diff -u -p -r1.4 msidefs.h
--- include/msidefs.h	24 Feb 2005 10:05:34 -0000	1.4
+++ include/msidefs.h	16 Mar 2005 16:52:57 -0000
@@ -103,6 +103,49 @@ enum msidbComponentAttributes
     msidbComponentAttributes64bit = 0x00000100
 };
 
+/*
+ * Windows SDK braindamage alert
+ *
+ * PID_DICTIONARY and PID_CODEPAGE are defined by propidl.h too
+ * PID_SECURITY is defined in propidl.h with a different value!
+ * So these need to be undefined first.
+ */
+#ifdef PID_DICTIONARY
+#undef PID_DICTIONARY
+#endif
+
+#ifdef PID_CODEPAGE
+#undef PID_CODEPAGE
+#endif
+
+#ifdef PID_SECURITY
+#undef PID_SECURITY
+#endif
+
+#define PID_DICTIONARY 0
+#define PID_CODEPAGE 1
+#define PID_TITLE 2
+#define PID_SUBJECT 3
+#define PID_AUTHOR 4
+#define PID_KEYWORDS 5
+#define PID_COMMENTS 6
+#define PID_TEMPLATE 7
+#define PID_LASTAUTHOR 8
+#define PID_REVNUMBER 9
+#define PID_EDITTINE 10
+#define PID_LASTPRINTED 11
+#define PID_CREATE_DTM 12
+#define PID_LASTSAVE_DTM 13
+#define PID_PAGECOUNT 14
+#define PID_WORDCOUNT 15
+#define PID_CHARCOUNT 16
+#define PID_THUMBNAIL 17
+#define PID_APPNAME 18
+#define PID_SECURITY 19
+#define PID_MSIVERSION PID_PAGECOUNT
+#define PID_MSISOURCE PID_WORDCOUNT
+#define PID_MSIRESTRICT PID_CHARCOUNT
+
 #ifdef __cplusplus
 }
 #endif


More information about the wine-patches mailing list