123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- /**
- * This file has no copyright assigned and is placed in the Public Domain.
- * This file is part of the mingw-w64 runtime package.
- * No warranty is given; refer to the file DISCLAIMER.PD within this package.
- */
- #ifndef _APPMGMT_H_
- #define _APPMGMT_H_
- #ifdef __cplusplus
- extern "C" {
- #endif
- typedef enum _INSTALLSPECTYPE {
- APPNAME = 1,
- FILEEXT,PROGID,
- COMCLASS
- } INSTALLSPECTYPE;
- typedef union _INSTALLSPEC {
- struct {
- WCHAR *Name;
- GUID GPOId;
- } AppName;
- WCHAR *FileExt;
- WCHAR *ProgId;
- struct {
- GUID Clsid;
- DWORD ClsCtx;
- } COMClass;
- } INSTALLSPEC;
- typedef struct _INSTALLDATA {
- INSTALLSPECTYPE Type;
- INSTALLSPEC Spec;
- } INSTALLDATA,*PINSTALLDATA;
- typedef enum {
- ABSENT,ASSIGNED,PUBLISHED
- } APPSTATE;
- #define LOCALSTATE_ASSIGNED 0x1
- #define LOCALSTATE_PUBLISHED 0x2
- #define LOCALSTATE_UNINSTALL_UNMANAGED 0x4
- #define LOCALSTATE_POLICYREMOVE_ORPHAN 0x8
- #define LOCALSTATE_POLICYREMOVE_UNINSTALL 0x10
- #define LOCALSTATE_ORPHANED 0x20
- #define LOCALSTATE_UNINSTALLED 0x40
- typedef struct _LOCALMANAGEDAPPLICATION {
- LPWSTR pszDeploymentName;
- LPWSTR pszPolicyName;
- LPWSTR pszProductId;
- DWORD dwState;
- } LOCALMANAGEDAPPLICATION,*PLOCALMANAGEDAPPLICATION;
- #define MANAGED_APPS_USERAPPLICATIONS 0x1
- #define MANAGED_APPS_FROMCATEGORY 0x2
- #define MANAGED_APPS_INFOLEVEL_DEFAULT 0x10000
- #define MANAGED_APPTYPE_WINDOWSINSTALLER 0x1
- #define MANAGED_APPTYPE_SETUPEXE 0x2
- #define MANAGED_APPTYPE_UNSUPPORTED 0x3
- typedef struct _MANAGEDAPPLICATION {
- LPWSTR pszPackageName;
- LPWSTR pszPublisher;
- DWORD dwVersionHi;
- DWORD dwVersionLo;
- DWORD dwRevision;
- GUID GpoId;
- LPWSTR pszPolicyName;
- GUID ProductId;
- LANGID Language;
- LPWSTR pszOwner;
- LPWSTR pszCompany;
- LPWSTR pszComments;
- LPWSTR pszContact;
- LPWSTR pszSupportUrl;
- DWORD dwPathType;
- WINBOOL bInstalled;
- } MANAGEDAPPLICATION,*PMANAGEDAPPLICATION;
- typedef struct _APPCATEGORYINFO {
- LCID Locale;
- LPWSTR pszDescription;
- GUID AppCategoryId;
- } APPCATEGORYINFO;
- typedef struct _APPCATEGORYINFOLIST {
- DWORD cCategory;
- APPCATEGORYINFO *pCategoryInfo;
- } APPCATEGORYINFOLIST;
- #ifndef WINAPI
- #define WINAPI __stdcall
- #endif
- DWORD WINAPI InstallApplication(PINSTALLDATA pInstallInfo);
- DWORD WINAPI UninstallApplication(WCHAR *ProductCode,DWORD dwStatus);
- DWORD WINAPI CommandLineFromMsiDescriptor(WCHAR *Descriptor,WCHAR *CommandLine,DWORD *CommandLineLength);
- DWORD WINAPI GetManagedApplications(GUID *pCategory,DWORD dwQueryFlags,DWORD dwInfoLevel,LPDWORD pdwApps,PMANAGEDAPPLICATION *prgManagedApps);
- DWORD WINAPI GetLocalManagedApplications(WINBOOL bUserApps,LPDWORD pdwApps,PLOCALMANAGEDAPPLICATION *prgLocalApps);
- void WINAPI GetLocalManagedApplicationData(WCHAR *ProductCode,LPWSTR *DisplayName,LPWSTR *SupportUrl);
- DWORD WINAPI GetManagedApplicationCategories(DWORD dwReserved,APPCATEGORYINFOLIST *pAppCategory);
- #ifdef __cplusplus
- }
- #endif
- #endif
|