Vincent Povirk : include: Add declaration for ICLRMetaHost.

Alexandre Julliard julliard at winehq.org
Mon Oct 4 11:04:04 CDT 2010


Module: wine
Branch: master
Commit: c7d82418a6f3d1a9c06b758a6e6aa83b212736cd
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=c7d82418a6f3d1a9c06b758a6e6aa83b212736cd

Author: Vincent Povirk <vincent at codeweavers.com>
Date:   Tue Sep 21 15:16:56 2010 -0500

include: Add declaration for ICLRMetaHost.

---

 .gitignore           |    1 +
 include/Makefile.in  |    1 +
 include/metahost.idl |   67 ++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 69 insertions(+), 0 deletions(-)

diff --git a/.gitignore b/.gitignore
index 3f72357..5666c5a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -178,6 +178,7 @@ include/imnact.h
 include/imnxport.h
 include/indexsrv.h
 include/mediaobj.h
+include/metahost.h
 include/mimeinfo.h
 include/mimeole.h
 include/mlang.h
diff --git a/include/Makefile.in b/include/Makefile.in
index fc6df0f..0c41dd4 100644
--- a/include/Makefile.in
+++ b/include/Makefile.in
@@ -41,6 +41,7 @@ PUBLIC_IDL_H_SRCS = \
 	imnxport.idl \
 	indexsrv.idl \
 	mediaobj.idl \
+	metahost.idl \
 	mimeinfo.idl \
 	mimeole.idl \
 	mlang.idl \
diff --git a/include/metahost.idl b/include/metahost.idl
new file mode 100644
index 0000000..d0d3355
--- /dev/null
+++ b/include/metahost.idl
@@ -0,0 +1,67 @@
+/*
+ * Copyright 2010 Vincent Povirk for CodeWeavers
+ *
+ * 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
+ */
+
+import "wtypes.idl";
+import "propidl.idl";
+
+interface ICLRRuntimeInfo;
+
+typedef HRESULT (__stdcall *CallbackThreadSetFnPtr)();
+typedef HRESULT (__stdcall *CallbackThreadUnsetFnPtr)();
+
+typedef void (__stdcall *RuntimeLoadedCallbackFnPtr)(
+    ICLRRuntimeInfo *pRuntimeInfo,
+    CallbackThreadSetFnPtr pfnCallbackThreadSet,
+    CallbackThreadUnsetFnPtr pfnCallbackThreadUnset);
+
+cpp_quote("DEFINE_GUID(CLSID_CLRMetaHost, 0x9280188d,0x0e8e,0x4867,0xb3,0x0c,0x7f,0xa8,0x38,0x84,0xe8,0xde);")
+
+[
+    object,
+    local,
+    uuid(d332db9e-b9b3-4125-8207-a14884f53216)
+]
+interface ICLRMetaHost : IUnknown
+{
+    HRESULT GetRuntime(
+        [in] LPCWSTR pwzVersion,
+        [in] REFIID iid,
+        [out, iid_is(iid), retval] LPVOID *ppRuntime);
+
+    HRESULT GetVersionFromFile(
+        [in] LPCWSTR pwzFilePath,
+        [out, size_is(*pcchBuffer)] LPWSTR pwzBuffer,
+        [in, out] DWORD *pcchBuffer);
+
+    HRESULT EnumerateInstalledRuntimes(
+        [out, retval] IEnumUnknown **ppEnumerator);
+
+    HRESULT EnumerateLoadedRuntimes(
+        [in] HANDLE hndProcess,
+        [out, retval] IEnumUnknown **ppEnumerator);
+
+    HRESULT RequestRuntimeLoadedNotification(
+        [in] RuntimeLoadedCallbackFnPtr pCallbackFunction);
+
+    HRESULT QueryLegacyV2RuntimeBinding(
+        [in] REFIID riid,
+        [out, iid_is(riid), retval] LPVOID *ppUnk);
+
+    HRESULT ExitProcess(
+        [in] INT32 iExitCode);
+};




More information about the wine-cvs mailing list