Implement SetupDiClassNameFromGuidExA.

This commit is contained in:
Juan Lang 2005-04-11 12:59:45 +00:00 committed by Alexandre Julliard
parent 0a1481a73f
commit 6f3228a539
2 changed files with 23 additions and 2 deletions

View File

@ -34,6 +34,7 @@
#include "setupapi.h"
#include "wine/debug.h"
#include "wine/unicode.h"
#include "cfgmgr32.h"
#include "initguid.h"
#include "winioctl.h"
#include "rpc.h"
@ -469,8 +470,24 @@ BOOL WINAPI SetupDiClassNameFromGuidExA(
PCSTR MachineName,
PVOID Reserved)
{
FIXME("\n");
return FALSE;
WCHAR ClassNameW[MAX_CLASS_NAME_LEN];
LPWSTR MachineNameW = NULL;
BOOL ret;
if (MachineName)
MachineNameW = MultiByteToUnicode(MachineName, CP_ACP);
ret = SetupDiClassNameFromGuidExW(ClassGuid, ClassNameW, MAX_CLASS_NAME_LEN,
NULL, MachineNameW, Reserved);
if (ret)
{
int len = WideCharToMultiByte(CP_ACP, 0, ClassNameW, -1, ClassName,
ClassNameSize, NULL, NULL);
if (!ClassNameSize && RequiredSize)
*RequiredSize = len;
}
MyFree(MachineNameW);
return ret;
}
/***********************************************************************

View File

@ -23,6 +23,10 @@ typedef DWORD CONFIGRET;
#define CR_SUCCESS 0
#define MAX_CLASS_NAME_LEN 32
#define MAX_GUID_STRING_LEN 39
#define MAX_PROFILE_LEN 80
CONFIGRET WINAPI CM_Get_Device_ID_ListA( PCSTR, PCHAR, ULONG, ULONG );
CONFIGRET WINAPI CM_Get_Device_ID_ListW( PCWSTR, PWCHAR, ULONG, ULONG );
#define CM_Get_Device_ID_List WINELIB_NAME_AW(CM_Get_Device_ID_List)