Centralized calls for SymSetContext, we only do it when we change the
[wine/multimedia.git] / include / advpub.h
blob6325643a2e109df7163acf246e0cdae3dc692930
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 /* Flags for RunSetupCommand */
50 #define RSC_FLAG_INF 0x00000001
51 #define RSC_FLAG_SKIPDISKSPACECHECK 0x00000002
52 #define RSC_FLAG_QUIET 0x00000004
53 #define RSC_FLAG_NGCONV 0x00000008
54 #define RSC_FLAG_UPDHLPDLLS 0x00000010
55 #define RSC_FLAG_DELAYREGISTEROCX 0x00000200
56 #define RSC_FLAG_SETUPAPI 0x00000400
58 /* Flags for DelNode */
59 #define ADN_DEL_IF_EMPTY 0x00000001
60 #define ADN_DONT_DEL_SUBDIRS 0x00000002
61 #define ADN_DONT_DEL_DIR 0x00000004
63 HRESULT WINAPI RunSetupCommand(HWND hWnd,
64 LPCSTR szCmdName, LPCSTR szInfSection, LPCSTR szDir, LPCSTR lpszTitle,
65 HANDLE *phEXE, DWORD dwFlags, LPVOID pvReserved);
66 HRESULT WINAPI DelNode(LPCSTR pszFileOrDirName, DWORD dwFlags);
67 HRESULT WINAPI ExecuteCab( HWND hwnd, PCABINFO pCab, LPVOID pReserved );
68 DWORD WINAPI NeedRebootInit(VOID);
69 BOOL WINAPI NeedReboot(DWORD dwRebootCheck);
70 HRESULT WINAPI RegInstall(HMODULE hm, LPCSTR pszSection, LPCSTRTABLE pstTable);
71 HRESULT WINAPI GetVersionFromFile(LPSTR lpszFilename, LPDWORD pdwMSVer, LPDWORD pdwLSVer, BOOL bVersion);
72 HRESULT WINAPI GetVersionFromFileEx(LPSTR lpszFilename, LPDWORD pdwMSVer, LPDWORD pdwLSVer, BOOL bVersion);
73 HRESULT WINAPI TranslateInfString(PCSTR pszInfFilename, PCSTR pszInstallSection,
74 PCSTR pszTranslateSection, PCSTR pszTranslateKey, PSTR pszBuffer,
75 DWORD dwBufferSize, PDWORD pdwRequiredSize, PVOID pvReserved);
77 #ifdef __cplusplus
79 #endif
81 #endif /* __WINE_ADVPUB_H */