[1/5] difxapi: Add stubs for DriverPackagePreinstall{A,W}
André Hentschel
nerv at dawncrow.de
Sun Jun 2 07:36:59 CDT 2013
---
dlls/difxapi/Makefile.in | 3 ++
dlls/difxapi/difxapi.spec | 4 +--
dlls/difxapi/main.c | 51 ++++++++++++++++++++++++++++++++++
include/difxapi.h | 70 +++++++++++++++++++++++++++++++++++++++++++++++
4 files changed, 126 insertions(+), 2 deletions(-)
create mode 100644 dlls/difxapi/main.c
create mode 100644 include/difxapi.h
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..8ffe6ab
--- /dev/null
+++ b/dlls/difxapi/main.c
@@ -0,0 +1,51 @@
+/*
+ * 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);
+
+BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
+{
+
+ switch (fdwReason)
+ {
+ case DLL_PROCESS_ATTACH:
+ DisableThreadLibraryCalls(hinstDLL);
+ break;
+ }
+
+ return TRUE;
+}
+
+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/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 */
--
1.8.1.2
More information about the wine-patches
mailing list