Something went wrong. Try again.
Reactos
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348/* * Copyright 2004 Huw D M Davies * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */#ifndef __WINE_ADVPUB_H#define __WINE_ADVPUB_H
#include <setupapi.h>/* FIXME: #include <cfgmgr32.h> */
#ifdef __cplusplusextern "C" {#endif
#ifndef S_ASYNCHRONOUS#define S_ASYNCHRONOUS _HRESULT_TYPEDEF_(0x401E8L)#endif
typedef struct _CabInfoA{ LPSTR pszCab; LPSTR pszInf; LPSTR pszSection; CHAR szSrcPath[MAX_PATH]; DWORD dwFlags;} CABINFOA, *PCABINFOA;
typedef struct _CabInfoW{ LPWSTR pszCab; LPWSTR pszInf; LPWSTR pszSection; WCHAR szSrcPath[MAX_PATH]; DWORD dwFlags;} CABINFOW, *PCABINFOW;
DECL_WINELIB_TYPE_AW(CABINFO)DECL_WINELIB_TYPE_AW(PCABINFO)
typedef struct _PERUSERSECTIONA{ CHAR szGUID[39 /*MAX_GUID_STRING_LEN*/ + 20]; CHAR szDispName[128]; CHAR szLocale[10]; CHAR szStub[MAX_PATH * 4]; CHAR szVersion[32]; CHAR szCompID[128]; DWORD dwIsInstalled; BOOL bRollback;} PERUSERSECTIONA, *PPERUSERSECTIONA;
typedef struct _PERUSERSECTIONW{ WCHAR szGUID[39 /*MAX_GUID_STRING_LEN*/ + 20]; WCHAR szDispName[128]; WCHAR szLocale[10]; WCHAR szStub[MAX_PATH * 4]; WCHAR szVersion[32]; WCHAR szCompID[128]; DWORD dwIsInstalled; BOOL bRollback;} PERUSERSECTIONW, *PPERUSERSECTIONW;
DECL_WINELIB_TYPE_AW(PERUSERSECTION)DECL_WINELIB_TYPE_AW(PPERUSERSECTION)
typedef struct _StrEntryA{ LPSTR pszName; LPSTR pszValue;} STRENTRYA, *LPSTRENTRYA;
typedef struct _StrEntryW{ LPWSTR pszName; LPWSTR pszValue;} STRENTRYW, *LPSTRENTRYW;
DECL_WINELIB_TYPE_AW(STRENTRY)DECL_WINELIB_TYPE_AW(LPSTRENTRY)
typedef struct _StrTableA{ DWORD cEntries; STRENTRYA* pse;} STRTABLEA, *LPSTRTABLEA;typedef const STRTABLEA CSTRTABLEA, *LPCSTRTABLEA;
typedef struct _StrTableW{ DWORD cEntries; STRENTRYW* pse;} STRTABLEW, *LPSTRTABLEW;typedef const STRTABLEW CSTRTABLEW, *LPCSTRTABLEW;
DECL_WINELIB_TYPE_AW(STRTABLE)DECL_WINELIB_TYPE_AW(CSTRTABLE)DECL_WINELIB_TYPE_AW(LPSTRTABLE)DECL_WINELIB_TYPE_AW(LPCSTRTABLE)
/* Flags for AddDelBackupEntry */#define AADBE_ADD_ENTRY 0x01#define AADBE_DEL_ENTRY 0x02
/* Flags for AdvInstallFile */#define AIF_WARNIFSKIP 0x00000001#define AIF_NOSKIP 0x00000002#define AIF_NOVERSIONCHECK 0x00000004#define AIF_FORCE_FILE_IN_USE 0x00000008#define AIF_NOOVERWRITE 0x00000010#define AIF_NO_VERSION_DIALOG 0x00000020#define AIF_REPLACEONLY 0x00000400#define AIF_NOLANGUAGECHECK 0x10000000#define AIF_QUIET 0x20000000
/* Flags for RunSetupCommand */#define RSC_FLAG_INF 0x00000001#define RSC_FLAG_SKIPDISKSPACECHECK 0x00000002#define RSC_FLAG_QUIET 0x00000004#define RSC_FLAG_NGCONV 0x00000008#define RSC_FLAG_UPDHLPDLLS 0x00000010#define RSC_FLAG_DELAYREGISTEROCX 0x00000200#define RSC_FLAG_SETUPAPI 0x00000400
/* Flags for LaunchINFSection */#define LIS_QUIET 0x00000001#define LIS_NOGRPCONV 0x00000002
/* Flags for DelNode */#define ADN_DEL_IF_EMPTY 0x00000001#define ADN_DONT_DEL_SUBDIRS 0x00000002#define ADN_DONT_DEL_DIR 0x00000004#define ADN_DEL_UNC_PATHS 0x00000008
/* Flags for RegRestoreAll, RegSaveRestore, RegSaveRestoreOnINF */#define IE4_RESTORE 0x00000001#define IE4_BACKNEW 0x00000002#define IE4_NODELETENEW 0x00000004#define IE4_NOMESSAGES 0x00000008#define IE4_NOPROGRESS 0x00000010#define IE4_NOENUMKEY 0x00000020#define IE4_NO_CRC_MAPPING 0x00000040#define IE4_REGSECTION 0x00000080#define IE4_FRDOALL 0x00000100#define IE4_UPDREFCNT 0x00000200#define IE4_USEREFCNT 0x00000400#define IE4_EXTRAINCREFCNT 0x00000800
/* Flags for file save and restore functions */#define AFSR_RESTORE IE4_RESTORE#define AFSR_BACKNEW IE4_BACKNEW#define AFSR_NODELETENEW IE4_NODELETENEW#define AFSR_NOMESSAGES IE4_NOMESSAGES#define AFSR_NOPROGRESS IE4_NOPROGRESS#define AFSR_UPDREFCNT IE4_UPDREFCNT#define AFSR_USEREFCNT IE4_USEREFCNT#define AFSR_EXTRAINCREFCNT IE4_EXTRAINCREFCNT
HRESULT WINAPI AddDelBackupEntryA(LPCSTR lpcszFileList, LPCSTR lpcszBackupDir, LPCSTR lpcszBaseName, DWORD dwFlags);HRESULT WINAPI AddDelBackupEntryW(LPCWSTR lpcszFileList, LPCWSTR lpcszBackupDir, LPCWSTR lpcszBaseName, DWORD dwFlags);#define AddDelBackupEntry WINELIB_NAME_AW(AddDelBackupEntry)HRESULT WINAPI AdvInstallFileA(HWND hwnd, LPCSTR lpszSourceDir, LPCSTR lpszSourceFile, LPCSTR lpszDestDir, LPCSTR lpszDestFile, DWORD dwFlags, DWORD dwReserved);HRESULT WINAPI AdvInstallFileW(HWND hwnd, LPCWSTR lpszSourceDir, LPCWSTR lpszSourceFile, LPCWSTR lpszDestDir, LPCWSTR lpszDestFile, DWORD dwFlags, DWORD dwReserved);#define AdvInstallFile WINELIB_NAME_AW(AdvInstallFile)HRESULT WINAPI CloseINFEngine(HINF hInf);HRESULT WINAPI DelNodeA(LPCSTR pszFileOrDirName, DWORD dwFlags);HRESULT WINAPI DelNodeW(LPCWSTR pszFileOrDirName, DWORD dwFlags);#define DelNode WINELIB_NAME_AW(DelNode)HRESULT WINAPI DelNodeRunDLL32A(HWND,HINSTANCE,LPSTR,INT);HRESULT WINAPI DelNodeRunDLL32W(HWND,HINSTANCE,LPWSTR,INT);#define DelNodeRunDLL32 WINELIB_NAME_AW(DelNodeRunDLL32)HRESULT WINAPI ExecuteCabA( HWND hwnd, CABINFOA* pCab, LPVOID pReserved );HRESULT WINAPI ExecuteCabW( HWND hwnd, CABINFOW* pCab, LPVOID pReserved );#define ExecuteCab WINELIB_NAME_AW(ExecuteCab)HRESULT WINAPI ExtractFilesA(LPCSTR,LPCSTR,DWORD,LPCSTR,LPVOID,DWORD);HRESULT WINAPI ExtractFilesW(LPCWSTR,LPCWSTR,DWORD,LPCWSTR,LPVOID,DWORD);#define ExtractFiles WINELIB_NAME_AW(ExtractFiles)
HRESULTWINAPIFileSaveMarkNotExistA( _In_opt_ LPSTR pszFileList, _In_opt_ LPSTR pszDir, _In_opt_ LPSTR pszBaseName);
HRESULTWINAPIFileSaveMarkNotExistW( _In_opt_ LPWSTR pszFileList, _In_opt_ LPWSTR pszDir, _In_opt_ LPWSTR pszBaseName);
#define FileSaveMarkNotExist WINELIB_NAME_AW(FileSaveMarkNotExist)
HRESULT WINAPI FileSaveRestoreA(HWND hDlg, LPSTR pszFileList, LPSTR pszDir, LPSTR pszBaseName, DWORD dwFlags);HRESULT WINAPI FileSaveRestoreW(HWND hDlg, LPWSTR pszFileList, LPWSTR pszDir, LPWSTR pszBaseName, DWORD dwFlags);#define FileSaveRestore WINELIB_NAME_AW(FileSaveRestore)HRESULT WINAPI FileSaveRestoreOnINFA(HWND hWnd, LPCSTR pszTitle, LPCSTR pszINF, LPCSTR pszSection, LPCSTR pszBackupDir, LPCSTR pszBaseBackupFile, DWORD dwFlags);HRESULT WINAPI FileSaveRestoreOnINFW(HWND hWnd, LPCWSTR pszTitle, LPCWSTR pszINF, LPCWSTR pszSection, LPCWSTR pszBackupDir, LPCWSTR pszBaseBackupFile, DWORD dwFlags);#define FileSaveRestoreOnINF WINELIB_NAME_AW(FileSaveRestoreOnINF)HRESULT WINAPI GetVersionFromFileA(LPCSTR lpszFilename, LPDWORD pdwMSVer, LPDWORD pdwLSVer, BOOL bVersion);HRESULT WINAPI GetVersionFromFileW(LPCWSTR lpszFilename, LPDWORD pdwMSVer, LPDWORD pdwLSVer, BOOL bVersion);#define GetVersionFromFile WINELIB_NAME_AW(GetVersionFromFile)HRESULT WINAPI GetVersionFromFileExA(LPCSTR lpszFilename, LPDWORD pdwMSVer, LPDWORD pdwLSVer, BOOL bVersion);HRESULT WINAPI GetVersionFromFileExW(LPCWSTR lpszFilename, LPDWORD pdwMSVer, LPDWORD pdwLSVer, BOOL bVersion);#define GetVersionFromFileEx WINELIB_NAME_AW(GetVersionFromFileEx)BOOL WINAPI IsNTAdmin(DWORD,LPDWORD);INT WINAPI LaunchINFSectionA(HWND,HINSTANCE,LPSTR,INT);INT WINAPI LaunchINFSectionW(HWND,HINSTANCE,LPWSTR,INT);#define LaunchINFSection WINELIB_NAME_AW(LaunchINFSection)
HRESULTWINAPILaunchINFSectionExA( _In_opt_ HWND, _In_opt_ HINSTANCE, _In_ LPSTR, _In_ INT);
HRESULTWINAPILaunchINFSectionExW( _In_opt_ HWND, _In_opt_ HINSTANCE, _In_ LPWSTR, _In_ INT);
#define LaunchINFSectionEx WINELIB_NAME_AW(LaunchINFSectionEx)
DWORD WINAPI NeedRebootInit(VOID);BOOL WINAPI NeedReboot(DWORD dwRebootCheck);HRESULT WINAPI OpenINFEngineA(LPCSTR pszInfFilename, LPCSTR pszInstallSection, DWORD dwFlags, HINF *phInf, PVOID pvReserved);HRESULT WINAPI OpenINFEngineW(LPCWSTR pszInfFilename, LPCWSTR pszInstallSection, DWORD dwFlags, HINF *phInf, PVOID pvReserved);#define OpenINFEngine WINELIB_NAME_AW(OpenINFEngine)HRESULT WINAPI RebootCheckOnInstallA(HWND hWnd, LPCSTR pszINF, LPCSTR pszSec, DWORD dwReserved);HRESULT WINAPI RebootCheckOnInstallW(HWND hWnd, LPCWSTR pszINF, LPCWSTR pszSec, DWORD dwReserved);#define RebootCheckOnInstall WINELIB_NAME_AW(RebootCheckOnInstall)HRESULT WINAPI RegInstallA(HMODULE hm, LPCSTR pszSection, const STRTABLEA* pstTable);HRESULT WINAPI RegInstallW(HMODULE hm, LPCWSTR pszSection, const STRTABLEW* pstTable);#define RegInstall WINELIB_NAME_AW(RegInstall)
HRESULTWINAPIRegRestoreAllA( _In_opt_ HWND hWnd, _In_opt_ LPSTR pszTitleString, _In_ HKEY hkBackupKey);
HRESULTWINAPIRegRestoreAllW( _In_opt_ HWND hWnd, _In_opt_ LPWSTR pszTitleString, _In_ HKEY hkBackupKey);
#define RegRestoreAll WINELIB_NAME_AW(RegRestoreAll)
HRESULT WINAPI RegSaveRestoreA(HWND hWnd, LPCSTR pszTitleString, HKEY hkBackupKey, LPCSTR pcszRootKey, LPCSTR pcszSubKey, LPCSTR pcszValueName, DWORD dwFlags);HRESULT WINAPI RegSaveRestoreW(HWND hWnd, LPCWSTR pszTitleString, HKEY hkBackupKey, LPCWSTR pcszRootKey, LPCWSTR pcszSubKey, LPCWSTR pcszValueName, DWORD dwFlags);#define RegSaveRestore WINELIB_NAME_AW(RegSaveRestore)HRESULT WINAPI RegSaveRestoreOnINFA(HWND hWnd, LPCSTR pszTitle, LPCSTR pszINF, LPCSTR pszSection, HKEY hHKLMBackKey, HKEY hHKCUBackKey, DWORD dwFlags);HRESULT WINAPI RegSaveRestoreOnINFW(HWND hWnd, LPCWSTR pszTitle, LPCWSTR pszINF, LPCWSTR pszSection, HKEY hHKLMBackKey, HKEY hHKCUBackKey, DWORD dwFlags);#define RegSaveRestoreOnINF WINELIB_NAME_AW(RegSaveRestoreOnINF)HRESULT WINAPI RunSetupCommandA(HWND hWnd, LPCSTR szCmdName, LPCSTR szInfSection, LPCSTR szDir, LPCSTR lpszTitle, HANDLE *phEXE, DWORD dwFlags, LPVOID pvReserved);HRESULT WINAPI RunSetupCommandW(HWND hWnd, LPCWSTR szCmdName, LPCWSTR szInfSection, LPCWSTR szDir, LPCWSTR lpszTitle, HANDLE *phEXE, DWORD dwFlags, LPVOID pvReserved);#define RunSetupCommand WINELIB_NAME_AW(RunSetupCommand)HRESULT WINAPI SetPerUserSecValuesA(PERUSERSECTIONA* pPerUser);HRESULT WINAPI SetPerUserSecValuesW(PERUSERSECTIONW* pPerUser);#define SetPerUserSecValues WINELIB_NAME_AW(SetPerUserSecValues)
HRESULTWINAPITranslateInfStringA( _In_ LPCSTR pszInfFilename, _In_ LPCSTR pszInstallSection, _In_ LPCSTR pszTranslateSection, _In_ LPCSTR pszTranslateKey, _Out_writes_opt_(dwBufferSize) LPSTR pszBuffer, _In_ DWORD dwBufferSize, _Out_ PDWORD pdwRequiredSize, _Reserved_ PVOID pvReserved);
HRESULTWINAPITranslateInfStringW( _In_ LPCWSTR pszInfFilename, _In_ LPCWSTR pszInstallSection, _In_ LPCWSTR pszTranslateSection, _In_ LPCWSTR pszTranslateKey, _Out_writes_opt_(dwBufferSize) LPWSTR pszBuffer, _In_ DWORD dwBufferSize, _Out_ PDWORD pdwRequiredSize, _Reserved_ PVOID pvReserved);
#define TranslateInfString WINELIB_NAME_AW(TranslateInfString)HRESULT WINAPI TranslateInfStringExA(HINF hInf, LPCSTR pszInfFilename, LPCSTR pszTranslateSection, LPCSTR pszTranslateKey, LPSTR pszBuffer, DWORD dwBufferSize, PDWORD pdwRequiredSize, PVOID pvReserved);HRESULT WINAPI TranslateInfStringExW(HINF hInf, LPCWSTR pszInfFilename, LPCWSTR pszTranslateSection, LPCWSTR pszTranslateKey, LPWSTR pszBuffer, DWORD dwBufferSize, PDWORD pdwRequiredSize, PVOID pvReserved);#define TranslateInfStringEx WINELIB_NAME_AW(TranslateInfStringEx)HRESULT WINAPI UserInstStubWrapperA(HWND hWnd, HINSTANCE hInstance, LPSTR pszParms, INT nShow);HRESULT WINAPI UserInstStubWrapperW(HWND hWnd, HINSTANCE hInstance, LPWSTR pszParms, INT nShow);#define UserInstStubWrapper WINELIB_NAME_AW(UserInstStubWrapper)HRESULT WINAPI UserUnInstStubWrapperA(HWND hWnd, HINSTANCE hInstance, LPSTR pszParms, INT nShow);HRESULT WINAPI UserUnInstStubWrapperW(HWND hWnd, HINSTANCE hInstance, LPWSTR pszParms, INT nShow);#define UserUnInstStubWrapper WINELIB_NAME_AW(UserUnInstStubWrapper)
#ifdef __cplusplus}#endif
#endif /* __WINE_ADVPUB_H */