reg: Support recursion in the 'copy' command.
[wine.git] / include / appmodel.h
blobe4288bbfbb02feabb8d86f0e7fa560b2d0aa0915
1 /*
2 * Copyright (C) 2017 Alistair Leslie-Hughes
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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
18 #ifndef _APPMODEL_H_
19 #define _APPMODEL_H_
21 #if defined(__cplusplus)
22 extern "C" {
23 #endif
25 typedef enum AppPolicyProcessTerminationMethod
27 AppPolicyProcessTerminationMethod_ExitProcess = 0,
28 AppPolicyProcessTerminationMethod_TerminateProcess = 1,
29 } AppPolicyProcessTerminationMethod;
31 typedef enum AppPolicyThreadInitializationType
33 AppPolicyThreadInitializationType_None = 0,
34 AppPolicyThreadInitializationType_InitializeWinRT = 1,
35 } AppPolicyThreadInitializationType;
37 typedef enum AppPolicyShowDeveloperDiagnostic
39 AppPolicyShowDeveloperDiagnostic_None = 0,
40 AppPolicyShowDeveloperDiagnostic_ShowUI = 1,
41 } AppPolicyShowDeveloperDiagnostic;
43 typedef enum AppPolicyWindowingModel
45 AppPolicyWindowingModel_None = 0,
46 AppPolicyWindowingModel_Universal = 1,
47 AppPolicyWindowingModel_ClassicDesktop = 2,
48 AppPolicyWindowingModel_ClassicPhone = 3
49 } AppPolicyWindowingModel;
51 typedef struct PACKAGE_VERSION
53 union
55 UINT64 Version;
56 struct
58 USHORT Revision;
59 USHORT Build;
60 USHORT Minor;
61 USHORT Major;
63 DUMMYSTRUCTNAME;
65 DUMMYUNIONNAME;
67 PACKAGE_VERSION;
69 typedef struct PACKAGE_ID
71 UINT32 reserved;
72 UINT32 processorArchitecture;
73 PACKAGE_VERSION version;
74 WCHAR *name;
75 WCHAR *publisher;
76 WCHAR *resourceId;
77 WCHAR *publisherId;
79 PACKAGE_ID;
81 LONG WINAPI AppPolicyGetProcessTerminationMethod(HANDLE token, AppPolicyProcessTerminationMethod *policy);
82 LONG WINAPI AppPolicyGetShowDeveloperDiagnostic(HANDLE token, AppPolicyShowDeveloperDiagnostic *policy);
83 LONG WINAPI AppPolicyGetThreadInitializationType(HANDLE token, AppPolicyThreadInitializationType *policy);
84 LONG WINAPI AppPolicyGetWindowingModel(HANDLE processToken, AppPolicyWindowingModel *policy);
85 LONG WINAPI PackageIdFromFullName(const WCHAR *full_name, UINT32 flags, UINT32 *buffer_length, BYTE *buffer);
87 #if defined(__cplusplus)
89 #endif
91 #endif /* _APPMODEL_H_ */