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
25 typedef struct _CabInfo
{
29 char szSrcPath
[MAX_PATH
];
33 typedef struct _StrEntry
{
36 } STRENTRY
, *LPSTRENTRY
;
38 typedef const STRENTRY CSTRENTRY
;
39 typedef CSTRENTRY
*LPCSTRENTRY
;
41 typedef struct _StrTable
{
44 } STRTABLE
, *LPSTRTABLE
;
46 typedef const STRTABLE CSTRTABLE
;
47 typedef CSTRTABLE
*LPCSTRTABLE
;
49 /* Flags for AdvInstallFile */
50 #define AIF_WARNIFSKIP 0x00000001
51 #define AIF_NOSKIP 0x00000002
52 #define AIF_NOVERSIONCHECK 0x00000004
53 #define AIF_FORCE_FILE_IN_USE 0x00000008
54 #define AIF_NOOVERWRITE 0x00000010
55 #define AIF_NO_VERSION_DIALOG 0x00000020
56 #define AIF_REPLACEONLY 0x00000400
57 #define AIF_NOLANGUAGECHECK 0x10000000
58 #define AIF_QUIET 0x20000000
60 /* Flags for RunSetupCommand */
61 #define RSC_FLAG_INF 0x00000001
62 #define RSC_FLAG_SKIPDISKSPACECHECK 0x00000002
63 #define RSC_FLAG_QUIET 0x00000004
64 #define RSC_FLAG_NGCONV 0x00000008
65 #define RSC_FLAG_UPDHLPDLLS 0x00000010
66 #define RSC_FLAG_DELAYREGISTEROCX 0x00000200
67 #define RSC_FLAG_SETUPAPI 0x00000400
69 /* Flags for DelNode */
70 #define ADN_DEL_IF_EMPTY 0x00000001
71 #define ADN_DONT_DEL_SUBDIRS 0x00000002
72 #define ADN_DONT_DEL_DIR 0x00000004
73 #define ADN_DEL_UNC_PATHS 0x00000008
75 HRESULT WINAPI
AdvInstallFile(HWND hwnd
, LPCSTR lpszSourceDir
,
76 LPCSTR lpszSourceFile
, LPCSTR lpszDestDir
, LPCSTR lpszDestFile
,
77 DWORD dwFlags
, DWORD dwReserved
);
78 HRESULT WINAPI
DelNode(LPCSTR pszFileOrDirName
, DWORD dwFlags
);
79 HRESULT WINAPI
DelNodeRunDLL32(HWND
,HINSTANCE
,LPSTR
,INT
);
80 HRESULT WINAPI
ExecuteCab( HWND hwnd
, PCABINFO pCab
, LPVOID pReserved
);
81 HRESULT WINAPI
ExtractFiles(LPCSTR
,LPCSTR
,DWORD
,LPCSTR
,LPVOID
,DWORD
);
82 HRESULT WINAPI
GetVersionFromFile(LPSTR lpszFilename
, LPDWORD pdwMSVer
, LPDWORD pdwLSVer
, BOOL bVersion
);
83 HRESULT WINAPI
GetVersionFromFileEx(LPSTR lpszFilename
, LPDWORD pdwMSVer
, LPDWORD pdwLSVer
, BOOL bVersion
);
84 BOOL WINAPI
IsNTAdmin(DWORD
,LPDWORD
);
85 INT WINAPI
LaunchINFSection(HWND
,HINSTANCE
,LPSTR
,INT
);
86 HRESULT WINAPI
LaunchINFSectionEx(HWND
,HINSTANCE
,LPSTR
,INT
);
87 DWORD WINAPI
NeedRebootInit(VOID
);
88 BOOL WINAPI
NeedReboot(DWORD dwRebootCheck
);
89 HRESULT WINAPI
RegInstall(HMODULE hm
, LPCSTR pszSection
, LPCSTRTABLE pstTable
);
90 HRESULT WINAPI
RunSetupCommand(HWND hWnd
,
91 LPCSTR szCmdName
, LPCSTR szInfSection
, LPCSTR szDir
, LPCSTR lpszTitle
,
92 HANDLE
*phEXE
, DWORD dwFlags
, LPVOID pvReserved
);
93 HRESULT WINAPI
TranslateInfString(PCSTR pszInfFilename
, PCSTR pszInstallSection
,
94 PCSTR pszTranslateSection
, PCSTR pszTranslateKey
, PSTR pszBuffer
,
95 DWORD dwBufferSize
, PDWORD pdwRequiredSize
, PVOID pvReserved
);
101 #endif /* __WINE_ADVPUB_H */