-/*\r
- * SetupAPI stubs\r
- *\r
- * Copyright 2000 James Hatheway\r
- *\r
- * This library is free software; you can redistribute it and/or\r
- * modify it under the terms of the GNU Lesser General Public\r
- * License as published by the Free Software Foundation; either\r
- * version 2.1 of the License, or (at your option) any later version.\r
- *\r
- * This library is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU\r
- * Lesser General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU Lesser General Public\r
- * License along with this library; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA\r
- */\r
-\r
-#include <stdarg.h>\r
-\r
-#include "wine/debug.h"\r
-#include "windef.h"\r
-#include "winbase.h"\r
-#include "wingdi.h"\r
-#include "winuser.h"\r
-#include "winnls.h"\r
-#include "winreg.h"\r
-#include "setupapi.h"\r
-\r
-WINE_DEFAULT_DEBUG_CHANNEL(setupapi);\r
-\r
-/***********************************************************************\r
- * TPWriteProfileString (SETUPX.62)\r
- */\r
-BOOL WINAPI TPWriteProfileString16( LPCSTR section, LPCSTR entry, LPCSTR string )\r
-{\r
- FIXME( "%s %s %s: stub\n", debugstr_a(section), debugstr_a(entry), debugstr_a(string) );\r
- return TRUE;\r
-}\r
-\r
-\r
-/***********************************************************************\r
- * suErrorToIds (SETUPX.61)\r
- */\r
-DWORD WINAPI suErrorToIds16( WORD w1, WORD w2 )\r
-{\r
- FIXME( "%x %x: stub\n", w1, w2 );\r
- return 0;\r
-}\r
-\r
-/***********************************************************************\r
- * SetupDiGetDeviceInfoListDetailA (SETUPAPI.@)\r
- */\r
-BOOL WINAPI SetupDiGetDeviceInfoListDetailA(HDEVINFO devinfo, PSP_DEVINFO_LIST_DETAIL_DATA_A devinfo_data )\r
-{\r
- FIXME("\n");\r
- return FALSE;\r
-}\r
-\r
-/***********************************************************************\r
- * SetupDiGetDeviceInfoListDetailW (SETUPAPI.@)\r
- */\r
-BOOL WINAPI SetupDiGetDeviceInfoListDetailW(HDEVINFO devinfo, PSP_DEVINFO_LIST_DETAIL_DATA_W devinfo_data )\r
-{\r
- FIXME("\n");\r
- return FALSE;\r
-}\r
-\r
-/***********************************************************************\r
- * (SETUPAPI.@)\r
- *\r
- * NO WINAPI in description given\r
- */\r
-HDEVINFO WINAPI SetupDiGetClassDevsExA(const GUID *class, PCSTR filter, HWND parent, DWORD flags, HDEVINFO deviceset, PCSTR machine, PVOID reserved)\r
-{\r
- FIXME("filter %s machine %s\n",debugstr_a(filter),debugstr_a(machine));\r
- return FALSE;\r
-}\r
-\r
-/***********************************************************************\r
- * (SETUPAPI.@)\r
- *\r
- * NO WINAPI in description given\r
- */\r
-HDEVINFO WINAPI SetupDiGetClassDevsExW(const GUID *class, PCWSTR filter, HWND parent, DWORD flags, HDEVINFO deviceset, PCWSTR machine, PVOID reserved)\r
-{\r
- FIXME("\n");\r
- return FALSE;\r
-}\r
-\r
-\r
-/***********************************************************************\r
- * SetupCopyOEMInfA (SETUPAPI.@)\r
- */\r
-BOOL WINAPI SetupCopyOEMInfA(PCSTR sourceinffile, PCSTR sourcemedialoc,\r
- DWORD mediatype, DWORD copystyle, PSTR destinfname,\r
- DWORD destnamesize, PDWORD required,\r
- PSTR *destinfnamecomponent)\r
-{\r
- FIXME("stub: source %s location %s ...\n", debugstr_a(sourceinffile),\r
- debugstr_a(sourcemedialoc));\r
- return FALSE;\r
-}\r
-\r
-/***********************************************************************\r
- * SetupCopyOEMInfW (SETUPAPI.@)\r
- */\r
-BOOL WINAPI SetupCopyOEMInfW(PCWSTR sourceinffile, PCWSTR sourcemedialoc,\r
- DWORD mediatype, DWORD copystyle, PWSTR destinfname,\r
- DWORD destnamesize, PDWORD required,\r
- PWSTR *destinfnamecomponent)\r
-{\r
- FIXME("stub: source %s location %s ...\n", debugstr_w(sourceinffile),\r
- debugstr_w(sourcemedialoc));\r
- return FALSE;\r
-}\r
-\r
-/***********************************************************************\r
- * SetupGetInfInformationA (SETUPAPI.@)\r
- */\r
-BOOL WINAPI SetupGetInfInformationA( LPCVOID InfSpec, DWORD SearchControl,\r
- PSP_INF_INFORMATION ReturnBuffer,\r
- DWORD ReturnBufferSize, PDWORD RequiredSize)\r
-{\r
- FIXME("(%p, %ld, %p, %ld, %p) Stub!\n",\r
- InfSpec, SearchControl, ReturnBuffer, ReturnBufferSize, RequiredSize );\r
- return TRUE;\r
-}\r
-\r
-/***********************************************************************\r
- * SetupInitializeFileLogW(SETUPAPI.@)\r
- */\r
-HANDLE WINAPI SetupInitializeFileLogW(LPWSTR LogFileName, DWORD Flags)\r
-{\r
- FIXME("Stub %s, 0x%lx\n",debugstr_w(LogFileName),Flags);\r
- return INVALID_HANDLE_VALUE;\r
-}\r
-\r
-/***********************************************************************\r
- * SetupInitializeFileLogA(SETUPAPI.@)\r
- */\r
-HANDLE WINAPI SetupInitializeFileLogA(LPSTR LogFileName, DWORD Flags)\r
-{\r
- FIXME("Stub %s, 0x%lx\n",debugstr_a(LogFileName),Flags);\r
- return INVALID_HANDLE_VALUE;\r
-}\r
-\r
-/***********************************************************************\r
- * SetupTerminateFileLog(SETUPAPI.@)\r
- */\r
-BOOL WINAPI SetupTerminateFileLog(HANDLE FileLogHandle)\r
-{\r
- FIXME ("Stub %p\n",FileLogHandle);\r
- return TRUE;\r
-}\r
+/*
+ * SetupAPI stubs
+ *
+ * Copyright 2000 James Hatheway
+ *
+ * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include "setupapi_private.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(setupapi);
+
+/***********************************************************************
+ * TPWriteProfileString (SETUPX.62)
+ */
+BOOL WINAPI TPWriteProfileString16( LPCSTR section, LPCSTR entry, LPCSTR string )
+{
+ FIXME( "%s %s %s: stub\n", debugstr_a(section), debugstr_a(entry), debugstr_a(string) );
+ return TRUE;
+}
+
+
+/***********************************************************************
+ * suErrorToIds (SETUPX.61)
+ */
+DWORD WINAPI suErrorToIds16( WORD w1, WORD w2 )
+{
+ FIXME( "%x %x: stub\n", w1, w2 );
+ return 0;
+}
+
+/***********************************************************************
+ * SetupDiGetDeviceInfoListDetailA (SETUPAPI.@)
+ */
+BOOL WINAPI SetupDiGetDeviceInfoListDetailA(HDEVINFO devinfo, PSP_DEVINFO_LIST_DETAIL_DATA_A devinfo_data )
+{
+ FIXME("\n");
+ return FALSE;
+}
+
+/***********************************************************************
+ * SetupCopyOEMInfA (SETUPAPI.@)
+ */
+BOOL WINAPI SetupCopyOEMInfA(PCSTR sourceinffile, PCSTR sourcemedialoc,
+ DWORD mediatype, DWORD copystyle, PSTR destinfname,
+ DWORD destnamesize, PDWORD required,
+ PSTR *destinfnamecomponent)
+{
+ FIXME("stub: source %s location %s ...\n", debugstr_a(sourceinffile),
+ debugstr_a(sourcemedialoc));
+ return FALSE;
+}
+
+/***********************************************************************
+ * SetupCopyOEMInfW (SETUPAPI.@)
+ */
+BOOL WINAPI SetupCopyOEMInfW(PCWSTR sourceinffile, PCWSTR sourcemedialoc,
+ DWORD mediatype, DWORD copystyle, PWSTR destinfname,
+ DWORD destnamesize, PDWORD required,
+ PWSTR *destinfnamecomponent)
+{
+ FIXME("stub: source %s location %s ...\n", debugstr_w(sourceinffile),
+ debugstr_w(sourcemedialoc));
+ //return FALSE;
+ return TRUE;
+}
+
+/***********************************************************************
+ * SetupGetInfInformationA (SETUPAPI.@)
+ */
+BOOL WINAPI SetupGetInfInformationA( LPCVOID InfSpec, DWORD SearchControl,
+ PSP_INF_INFORMATION ReturnBuffer,
+ DWORD ReturnBufferSize, PDWORD RequiredSize)
+{
+ FIXME("(%p, %ld, %p, %ld, %p) Stub!\n",
+ InfSpec, SearchControl, ReturnBuffer, ReturnBufferSize, RequiredSize );
+ return TRUE;
+}
+
+/***********************************************************************
+ * SetupInitializeFileLogW(SETUPAPI.@)
+ */
+HANDLE WINAPI SetupInitializeFileLogW(LPCWSTR LogFileName, DWORD Flags)
+{
+ FIXME("Stub %s, 0x%lx\n",debugstr_w(LogFileName),Flags);
+ return INVALID_HANDLE_VALUE;
+}
+
+/***********************************************************************
+ * SetupInitializeFileLogA(SETUPAPI.@)
+ */
+HANDLE WINAPI SetupInitializeFileLogA(LPCSTR LogFileName, DWORD Flags)
+{
+ FIXME("Stub %s, 0x%lx\n",debugstr_a(LogFileName),Flags);
+ return INVALID_HANDLE_VALUE;
+}
+
+/***********************************************************************
+ * SetupPromptReboot(SETUPAPI.@)
+ */
+INT WINAPI SetupPromptReboot(HSPFILEQ FileQueue, HWND Owner, BOOL ScanOnly)
+{
+#if 0
+ int ret;
+ TCHAR RebootText[RC_STRING_MAX_SIZE];
+ TCHAR RebootCaption[RC_STRING_MAX_SIZE];
+ INT rc = 0;
+
+ TRACE("%p %p %d\n", FileQueue, Owner, ScanOnly);
+
+ if (ScanOnly && !FileQueue)
+ {
+ SetLastError(ERROR_INVALID_PARAMETER);
+ return -1;
+ }
+
+ if (FileQueue)
+ {
+ FIXME("Case 'FileQueue != NULL' not implemented\n");
+ /* In some cases, do 'rc |= SPFILEQ_FILE_IN_USE' */
+ }
+
+ if (ScanOnly)
+ return rc;
+
+ /* We need to ask the question to the user. */
+ rc |= SPFILEQ_REBOOT_RECOMMENDED;
+ if (0 == LoadString(hInstance, IDS_QUERY_REBOOT_TEXT, RebootText, RC_STRING_MAX_SIZE))
+ return -1;
+ if (0 == LoadString(hInstance, IDS_QUERY_REBOOT_CAPTION, RebootCaption, RC_STRING_MAX_SIZE))
+ return -1;
+ ret = MessageBox(Owner, RebootText, RebootCaption, MB_YESNO | MB_DEFBUTTON1);
+ if (IDNO == ret)
+ return rc;
+ else
+ {
+ if (ExitWindowsEx(EWX_REBOOT, 0))
+ return rc | SPFILEQ_REBOOT_IN_PROGRESS;
+ else
+ return -1;
+ }
+#endif
+ FIXME("Stub %p %p %d\n", FileQueue, Owner, ScanOnly);
+ SetLastError(ERROR_GEN_FAILURE);
+ return -1;
+}
+
+
+/***********************************************************************
+ * SetupTerminateFileLog(SETUPAPI.@)
+ */
+BOOL WINAPI SetupTerminateFileLog(HANDLE FileLogHandle)
+{
+ FIXME ("Stub %p\n",FileLogHandle);
+ return TRUE;
+}
+
+
+/***********************************************************************
+ * SetupDiDestroyClassImageList(SETUPAPI.@)
+ */
+BOOL WINAPI SetupDiDestroyClassImageList(PSP_CLASSIMAGELIST_DATA ClassImageListData)
+{
+ FIXME ("Stub %p\n", ClassImageListData);
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return TRUE;
+}
+