Jacek Caban : inseng.idl: Added more declarations.
Alexandre Julliard
julliard at wine.codeweavers.com
Wed Apr 22 10:26:42 CDT 2015
Module: wine
Branch: master
Commit: c61d9981e8a6139d68dfd2093cf6b9aaaa4bd1cb
URL: http://source.winehq.org/git/wine.git/?a=commit;h=c61d9981e8a6139d68dfd2093cf6b9aaaa4bd1cb
Author: Jacek Caban <jacek at codeweavers.com>
Date: Wed Apr 22 15:48:13 2015 +0200
inseng.idl: Added more declarations.
---
include/inseng.idl | 101 +++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 101 insertions(+)
diff --git a/include/inseng.idl b/include/inseng.idl
index 7b9d0e7..8a3f4c4 100644
--- a/include/inseng.idl
+++ b/include/inseng.idl
@@ -20,6 +20,107 @@
#define threading(model)
#endif
+cpp_quote("#if 0")
+import "unknwn.idl";
+cpp_quote("#endif")
+
+interface IStream;
+
+/* FIXME: Add full declarations. */
+interface ICifComponent;
+interface IEnumCifComponents;
+interface ICifGroup;
+interface IEnumCifGroups;
+interface ICifMode;
+interface IEnumCifModes;
+
+typedef struct {
+ DWORD cbSize;
+ DWORD dwInstallSize;
+ DWORD dwWinDriveSize;
+ DWORD dwDownloadSize;
+ DWORD dwDependancySize;
+ DWORD dwInstallDriveReq;
+ DWORD dwWinDriveReq;
+ DWORD dwDownloadDriveReq;
+ char chWinDrive;
+ char chInstallDrive;
+ char chDownloadDrive;
+ DWORD dwTotalDownloadSize;
+} COMPONENT_SIZES;
+
+[
+ uuid(6e449688-c509-11cf-aafa-00aa00b6015c),
+ local
+]
+interface ICifFile : IUnknown
+{
+ HRESULT EnumComponents(IEnumCifComponents **enum_components, DWORD filter, void *pv);
+ HRESULT FindComponent(const char *id, ICifComponent **p);
+ HRESULT EnumGroups(IEnumCifGroups **enum_groups, DWORD filter, void *pv);
+ HRESULT FindGroup(const char *id, ICifGroup **p);
+ HRESULT EnumModes(IEnumCifModes **cuf_modes, DWORD filter, void *pv);
+ HRESULT FindMode(const char *id, ICifMode **p);
+ HRESULT GetDescription(char *desc, DWORD size);
+ HRESULT GetDetDlls(char **dlls, DWORD size);
+}
+
+[
+ uuid(6e449685-c509-11cf-aafa-00aa00b6015c),
+ local
+]
+interface IInstallEngineCallback : IUnknown
+{
+ HRESULT OnEngineStatusChange(DWORD status, DWORD substatus);
+ HRESULT OnStartInstall(DWORD dl_size, DWORD install_size);
+ HRESULT OnStartComponent(const char *id, DWORD dl_size, DWORD install_size, const char *string);
+ HRESULT OnComponentProgress(const char *id, DWORD phrase, const char *string,
+ const char *msg_string, ULONG progress, ULONG max);
+ HRESULT OnStopComponent(const char *id, HRESULT error, DWORD phrase, const char *string, DWORD status);
+ HRESULT OnStopInstall(HRESULT error, const char *error_string, DWORD status);
+ HRESULT OnEngineProblem(DWORD problem, LPDWORD action);
+}
+
+[
+ uuid(6e449684-c509-11cf-aafa-00aa00b6015c),
+ local
+]
+interface IInstallEngine : IUnknown
+{
+ HRESULT GetEngineStatus(DWORD *status);
+ HRESULT SetCifFile(const char *cab_name, const char *cif_name);
+ HRESULT DownloadComponents(DWORD flags);
+ HRESULT InstallComponents(DWORD flags);
+ HRESULT EnumInstallIDs(UINT index, char **id);
+ HRESULT EnumDownloadIDs(UINT index, char **id);
+ HRESULT IsComponentInstalled(const char *id, DWORD *status);
+ HRESULT RegisterInstallEngineCallback(IInstallEngineCallback *callback);
+ HRESULT UnregisterInstallEngineCallback();
+ HRESULT SetAction(const char *id, DWORD action, DWORD priority);
+ HRESULT GetSizes(const char *id, COMPONENT_SIZES *sizes);
+ HRESULT LaunchExtraCommand(const char *inf_name, const char *section);
+ HRESULT GetDisplayName(const char *id, const char *name);
+ HRESULT SetBaseUrl(const char *base_name);
+ HRESULT SetDownloadDir(const char *download_dir);
+ HRESULT SetInstallDrive(char drive);
+ HRESULT SetInstallOptions(DWORD flags);
+ HRESULT SetHWND(HWND hwnd);
+ HRESULT SetIStream(IStream *stream);
+ HRESULT Abort(DWORD flags);
+ HRESULT Suspend();
+ HRESULT Resume();
+}
+
+[
+ uuid(6e449689-c509-11cf-aafa-00aa00b6015c),
+ local
+]
+interface IInstallEngine2 : IInstallEngine
+{
+ HRESULT SetLocalCif(const char *cif);
+ HRESULT GetICifFile(ICifFile **cif_file);
+}
+
[
helpstring("Microsoft Active Setup Engine"),
threading(apartment),
More information about the wine-cvs
mailing list