static control: Background of enhanced metafiles.
[wine/hacks.git] / include / advpub.h
blobaef373b4d7740521f165672f27c069a14d472ad4
1 /*
2 * Copyright 2004 Huw D M Davies
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 #ifndef __WINE_ADVPUB_H
19 #define __WINE_ADVPUB_H
21 #ifdef __cplusplus
22 extern "C" {
23 #endif
25 typedef struct _CabInfo {
26 PSTR pszCab;
27 PSTR pszInf;
28 PSTR pszSection;
29 char szSrcPath[MAX_PATH];
30 DWORD dwFlags;
31 } CABINFO, *PCABINFO;
33 typedef struct _StrEntry {
34 LPSTR pszName;
35 LPSTR pszValue;
36 } STRENTRY, *LPSTRENTRY;
38 typedef const STRENTRY CSTRENTRY;
39 typedef CSTRENTRY *LPCSTRENTRY;
41 typedef struct _StrTable {
42 DWORD cEntries;
43 LPSTRENTRY pse;
44 } STRTABLE, *LPSTRTABLE;
46 typedef const STRTABLE CSTRTABLE;
47 typedef CSTRTABLE *LPCSTRTABLE;
49 #ifndef _INC_SETUPAPI
50 typedef PVOID HINF;
51 #endif
53 /* Flags for AddDelBackupEntry */
54 #define AADBE_ADD_ENTRY 0x01
55 #define AADBE_DEL_ENTRY 0x02
57 /* Flags for AdvInstallFile */
58 #define AIF_WARNIFSKIP 0x00000001
59 #define AIF_NOSKIP 0x00000002
60 #define AIF_NOVERSIONCHECK 0x00000004
61 #define AIF_FORCE_FILE_IN_USE 0x00000008
62 #define AIF_NOOVERWRITE 0x00000010
63 #define AIF_NO_VERSION_DIALOG 0x00000020
64 #define AIF_REPLACEONLY 0x00000400
65 #define AIF_NOLANGUAGECHECK 0x10000000
66 #define AIF_QUIET 0x20000000
68 /* Flags for RunSetupCommand */
69 #define RSC_FLAG_INF 0x00000001
70 #define RSC_FLAG_SKIPDISKSPACECHECK 0x00000002
71 #define RSC_FLAG_QUIET 0x00000004
72 #define RSC_FLAG_NGCONV 0x00000008
73 #define RSC_FLAG_UPDHLPDLLS 0x00000010
74 #define RSC_FLAG_DELAYREGISTEROCX 0x00000200
75 #define RSC_FLAG_SETUPAPI 0x00000400
77 /* Flags for DelNode */
78 #define ADN_DEL_IF_EMPTY 0x00000001
79 #define ADN_DONT_DEL_SUBDIRS 0x00000002
80 #define ADN_DONT_DEL_DIR 0x00000004
81 #define ADN_DEL_UNC_PATHS 0x00000008
83 /* Flags for RegRestoreAll, RegSaveRestore, RegSaveRestoreOnINF */
84 #define IE4_RESTORE 0x00000001
85 #define IE4_BACKNEW 0x00000002
86 #define IE4_NODELETENEW 0x00000004
87 #define IE4_NOMESSAGES 0x00000008
88 #define IE4_NOPROGRESS 0x00000010
89 #define IE4_NOENUMKEY 0x00000020
90 #define IE4_NO_CRC_MAPPING 0x00000040
91 #define IE4_REGSECTION 0x00000080
92 #define IE4_FRDOALL 0x00000100
93 #define IE4_UPDREFCNT 0x00000200
94 #define IE4_USEREFCNT 0x00000400
95 #define IE4_EXTRAINCREFCNT 0x00000800
97 /* Flags for file save and restore functions */
98 #define AFSR_RESTORE IE4_RESTORE
99 #define AFSR_BACKNEW IE4_BACKNEW
100 #define AFSR_NODELETENEW IE4_NODELETENEW
101 #define AFSR_NOMESSAGES IE4_NOMESSAGES
102 #define AFSR_NOPROGRESS IE4_NOPROGRESS
103 #define AFSR_UPDREFCNT IE4_UPDREFCNT
104 #define AFSR_USEREFCNT IE4_USEREFCNT
105 #define AFSR_EXTRAINCREFCNT IE4_EXTRAINCREFCNT
107 HRESULT WINAPI AddDelBackupEntry(LPCSTR lpcszFileList, LPCSTR lpcszBackupDir,
108 LPCSTR lpcszBaseName, DWORD dwFlags);
109 HRESULT WINAPI AdvInstallFile(HWND hwnd, LPCSTR lpszSourceDir,
110 LPCSTR lpszSourceFile, LPCSTR lpszDestDir, LPCSTR lpszDestFile,
111 DWORD dwFlags, DWORD dwReserved);
112 HRESULT WINAPI CloseINFEngine(HINF hInf);
113 HRESULT WINAPI DelNode(LPCSTR pszFileOrDirName, DWORD dwFlags);
114 HRESULT WINAPI DelNodeRunDLL32(HWND,HINSTANCE,LPSTR,INT);
115 HRESULT WINAPI ExecuteCab( HWND hwnd, PCABINFO pCab, LPVOID pReserved );
116 HRESULT WINAPI ExtractFiles(LPCSTR,LPCSTR,DWORD,LPCSTR,LPVOID,DWORD);
117 HRESULT WINAPI FileSaveMarkNotExist(LPSTR pszFileList, LPSTR pszDir, LPSTR pszBaseName);
118 HRESULT WINAPI FileSaveRestore(HWND hDlg, LPSTR pszFileList, LPSTR pszDir,
119 LPSTR pszBaseName, DWORD dwFlags);
120 HRESULT WINAPI FileSaveRestoreOnINF(HWND hWnd, PCSTR pszTitle, PCSTR pszINF,
121 PCSTR pszSection, PCSTR pszBackupDir, PCSTR pszBaseBackupFile, DWORD dwFlags);
122 HRESULT WINAPI GetVersionFromFile(LPSTR lpszFilename, LPDWORD pdwMSVer, LPDWORD pdwLSVer, BOOL bVersion);
123 HRESULT WINAPI GetVersionFromFileEx(LPSTR lpszFilename, LPDWORD pdwMSVer, LPDWORD pdwLSVer, BOOL bVersion);
124 BOOL WINAPI IsNTAdmin(DWORD,LPDWORD);
125 INT WINAPI LaunchINFSection(HWND,HINSTANCE,LPSTR,INT);
126 HRESULT WINAPI LaunchINFSectionEx(HWND,HINSTANCE,LPSTR,INT);
127 DWORD WINAPI NeedRebootInit(VOID);
128 BOOL WINAPI NeedReboot(DWORD dwRebootCheck);
129 HRESULT WINAPI OpenINFEngine(PCSTR pszInfFilename, PCSTR pszInstallSection,
130 DWORD dwFlags, HINF *phInf, PVOID pvReserved);
131 HRESULT WINAPI RegInstall(HMODULE hm, LPCSTR pszSection, LPCSTRTABLE pstTable);
132 HRESULT WINAPI RegRestoreAll(HWND hWnd, PSTR pszTitleString, HKEY hkBackupKey);
133 HRESULT WINAPI RegSaveRestore(HWND hWnd, PCSTR pszTitleString, HKEY hkBackupKey,
134 PCSTR pcszRootKey, PCSTR pcszSubKey, PCSTR pcszValueName, DWORD dwFlags);
135 HRESULT WINAPI RegSaveRestoreOnINF(HWND hWnd, PCSTR pszTitle, PCSTR pszINF,
136 PCSTR pszSection, HKEY hHKLMBackKey, HKEY hHKCUBackKey, DWORD dwFlags);
137 HRESULT WINAPI RunSetupCommand(HWND hWnd,
138 LPCSTR szCmdName, LPCSTR szInfSection, LPCSTR szDir, LPCSTR lpszTitle,
139 HANDLE *phEXE, DWORD dwFlags, LPVOID pvReserved);
140 HRESULT WINAPI TranslateInfString(PCSTR pszInfFilename, PCSTR pszInstallSection,
141 PCSTR pszTranslateSection, PCSTR pszTranslateKey, PSTR pszBuffer,
142 DWORD dwBufferSize, PDWORD pdwRequiredSize, PVOID pvReserved);
143 HRESULT WINAPI TranslateInfStringEx(HINF hInf, PCSTR pszInfFilename,
144 PCSTR pszTranslateSection, PCSTR pszTranslateKey, PSTR pszBuffer,
145 DWORD dwBufferSize, PDWORD pdwRequiredSize, PVOID pvReserved);
147 #ifdef __cplusplus
149 #endif
151 #endif /* __WINE_ADVPUB_H */