Module: wine
Branch: master
Commit: 15cdb51792f2ba5f2dbc1821f08116575d7db5e1
URL: http://source.winehq.org/git/wine.git/?a=commit;h=15cdb51792f2ba5f2dbc1821f…
Author: André Hentschel <nerv(a)dawncrow.de>
Date: Sun Jun 2 14:36:59 2013 +0200
difxapi: Add stubs for DriverPackagePreinstall{A,W}.
---
dlls/difxapi/Makefile.in | 3 ++
dlls/difxapi/difxapi.spec | 4 +-
dlls/difxapi/main.c | 38 ++++++++++++++++++++++++
include/Makefile.in | 1 +
include/difxapi.h | 70 +++++++++++++++++++++++++++++++++++++++++++++
5 files changed, 114 insertions(+), 2 deletions(-)
diff --git a/dlls/difxapi/Makefile.in b/dlls/difxapi/Makefile.in
index 17ddaa2..68aba98 100644
--- a/dlls/difxapi/Makefile.in
+++ b/dlls/difxapi/Makefile.in
@@ -1,3 +1,6 @@
MODULE = difxapi.dll
+C_SRCS = \
+ main.c
+
@MAKE_DLL_RULES@
diff --git a/dlls/difxapi/difxapi.spec b/dlls/difxapi/difxapi.spec
index a7f6ade..6fbc0bb 100644
--- a/dlls/difxapi/difxapi.spec
+++ b/dlls/difxapi/difxapi.spec
@@ -4,7 +4,7 @@
@ stub DriverPackageGetPathW
@ stub DriverPackageInstallA
@ stub DriverPackageInstallW
-@ stub DriverPackagePreinstallA
-@ stub DriverPackagePreinstallW
+@ stdcall DriverPackagePreinstallA(str long)
+@ stdcall DriverPackagePreinstallW(wstr long)
@ stub DriverPackageUninstallA
@ stub DriverPackageUninstallW
diff --git a/dlls/difxapi/main.c b/dlls/difxapi/main.c
new file mode 100644
index 0000000..047b912
--- /dev/null
+++ b/dlls/difxapi/main.c
@@ -0,0 +1,38 @@
+/*
+ * Copyright (c) 2013 André Hentschel
+ *
+ * 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
+ */
+
+#include <stdarg.h>
+
+#include "windef.h"
+#include "winbase.h"
+#include "difxapi.h"
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(difxapi);
+
+DWORD WINAPI DriverPackagePreinstallA(LPCSTR inf, DWORD flags)
+{
+ FIXME("(%s, %u) stub\n", wine_dbgstr_a(inf), flags);
+ return ERROR_SUCCESS;
+}
+
+DWORD WINAPI DriverPackagePreinstallW(LPCWSTR inf, DWORD flags)
+{
+ FIXME("(%s, %u) stub\n", wine_dbgstr_w(inf), flags);
+ return ERROR_SUCCESS;
+}
diff --git a/include/Makefile.in b/include/Makefile.in
index 6517393..c3a39bc 100644
--- a/include/Makefile.in
+++ b/include/Makefile.in
@@ -246,6 +246,7 @@ SRCDIR_INCLUDES = \
devguid.h \
devpkey.h \
devpropdef.h \
+ difxapi.h \
digitalv.h \
dinput.h \
dinputd.h \
diff --git a/include/difxapi.h b/include/difxapi.h
new file mode 100644
index 0000000..f5149b8
--- /dev/null
+++ b/include/difxapi.h
@@ -0,0 +1,70 @@
+/*
+ * Copyright (c) 2013 André Hentschel
+ *
+ * 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_DIFXAPI_H
+#define __WINE_DIFXAPI_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef struct _INSTALLERINFO_A
+{
+ PSTR pApplicationId;
+ PSTR pDisplayName;
+ PSTR pProductName;
+ PSTR pMfgName;
+} INSTALLERINFO_A, *PINSTALLERINFO_A;
+typedef const PINSTALLERINFO_A PCINSTALLERINFO_A;
+
+typedef struct _INSTALLERINFO_W
+{
+ PWSTR pApplicationId;
+ PWSTR pDisplayName;
+ PWSTR pProductName;
+ PWSTR pMfgName;
+} INSTALLERINFO_W, *PINSTALLERINFO_W;
+typedef const PINSTALLERINFO_W PCINSTALLERINFO_W;
+
+typedef enum _DIFXAPI_LOG
+{
+ DIFXAPI_SUCCESS,
+ DIFXAPI_INFO,
+ DIFXAPI_WARNING,
+ DIFXAPI_ERROR,
+} DIFXAPI_LOG;
+
+typedef VOID (CALLBACK *DIFXAPILOGCALLBACK_A)(DIFXAPI_LOG,DWORD,PCSTR,PVOID);
+typedef VOID (CALLBACK *DIFXAPILOGCALLBACK_W)(DIFXAPI_LOG,DWORD,PCWSTR,PVOID);
+
+VOID WINAPI DIFXAPISetLogCallbackA(DIFXAPILOGCALLBACK_A,VOID*);
+VOID WINAPI DIFXAPISetLogCallbackW(DIFXAPILOGCALLBACK_W,VOID*);
+DWORD WINAPI DriverPackageGetPathA(PCSTR,PSTR,DWORD*);
+DWORD WINAPI DriverPackageGetPathW(PCWSTR,PWSTR,DWORD*);
+DWORD WINAPI DriverPackageInstallA(PCSTR,DWORD,PCINSTALLERINFO_A,BOOL*);
+DWORD WINAPI DriverPackageInstallW(PCWSTR,DWORD,PCINSTALLERINFO_W,BOOL*);
+DWORD WINAPI DriverPackagePreinstallA(PCSTR,DWORD);
+DWORD WINAPI DriverPackagePreinstallW(PCWSTR,DWORD);
+DWORD WINAPI DriverPackageUninstallA(PCSTR,DWORD,PCINSTALLERINFO_A,BOOL*);
+DWORD WINAPI DriverPackageUninstallW(PCWSTR,DWORD,PCINSTALLERINFO_W,BOOL*);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __WINE_DIFXAPI_H */