From 115e5990b71dfd7e7e3594278df8286ab2d6ef46 Mon Sep 17 00:00:00 2001 From: Juan Lang Date: Thu, 20 Sep 2007 18:30:15 -0700 Subject: [PATCH] Implement SetupDiCreateDeviceInterfaceA on top of SetupDiCreateInterfaceW --- dlls/setupapi/devinst.c | 18 ++++++++++++++++-- 1 files changed, 16 insertions(+), 2 deletions(-) diff --git a/dlls/setupapi/devinst.c b/dlls/setupapi/devinst.c index d92f0f3..924a93a 100644 --- a/dlls/setupapi/devinst.c +++ b/dlls/setupapi/devinst.c @@ -1817,12 +1817,26 @@ BOOL WINAPI SetupDiCreateDeviceInterface DWORD CreationFlags, PSP_DEVICE_INTERFACE_DATA DeviceInterfaceData) { + BOOL ret; + LPWSTR ReferenceStringW = NULL; + TRACE("%p %p %s %s %08x %p\n", DeviceInfoSet, DeviceInfoData, debugstr_guid(InterfaceClassGuid), debugstr_a(ReferenceString), CreationFlags, DeviceInterfaceData); - FIXME("stub\n"); - return FALSE; + if (ReferenceString) + { + ReferenceStringW = MultiByteToUnicode(ReferenceString, CP_ACP); + if (ReferenceStringW == NULL) return FALSE; + } + + ret = SetupDiCreateDeviceInterfaceW(DeviceInfoSet, DeviceInfoData, + InterfaceClassGuid, ReferenceStringW, CreationFlags, + DeviceInterfaceData); + + MyFree(ReferenceStringW); + + return ret; } /*********************************************************************** -- 1.4.1