Implement

- SetupDiBuildClassInfoList(ExW)
 - SetupDiClassGuidsFromName(W/ExW),
 - SetupDiClassNameFromGuid(W/ExW)
 - SetupDiGetActualSectionToInstallW
 - SetupDiGetClassDescription(W/ExW)
 - SetupDiInstallClassW partially
 - SetupDiOpenClassRegKey(ExW)
 - SetupOpenMasterInf

Fix compiler warnings.

svn path=/trunk/; revision=11331
This commit is contained in:
Eric Kohl 2004-10-19 11:19:16 +00:00
parent f8eb27af13
commit 9058842f67
6 changed files with 1039 additions and 123 deletions

View file

@ -4,7 +4,7 @@ TOPOBJDIR = ../..
SRCDIR = @srcdir@ SRCDIR = @srcdir@
VPATH = @srcdir@ VPATH = @srcdir@
MODULE = setupapi.dll MODULE = setupapi.dll
IMPORTS = user32 version advapi32 kernel32 ntdll IMPORTS = user32 version advapi32 kernel32 ntdll rpcrt4
ALTNAMES = setupx.dll ALTNAMES = setupx.dll
EXTRALIBS = $(LIBUNICODE) EXTRALIBS = $(LIBUNICODE)

File diff suppressed because it is too large Load diff

View file

@ -1161,6 +1161,23 @@ BOOL WINAPI SetupOpenAppendInfFileW( PCWSTR name, HINF parent_hinf, UINT *error
} }
/***********************************************************************
* SetupOpenMasterInf (SETUPAPI.@)
*/
HINF WINAPI SetupOpenMasterInf( VOID )
{
static const WCHAR Layout[] = {'\\','i','n','f','\\', 'l', 'a', 'y', 'o', 'u', 't', '.', 'i', 'n', 'f', 0};
WCHAR Buffer[MAX_PATH];
GetWindowsDirectoryW( Buffer, MAX_PATH );
wcscat( Buffer, Layout );
return SetupOpenInfFileW( Buffer, NULL, INF_STYLE_WIN4, NULL);
}
/*********************************************************************** /***********************************************************************
* SetupCloseInfFile (SETUPAPI.@) * SetupCloseInfFile (SETUPAPI.@)
*/ */

View file

@ -978,8 +978,8 @@ BOOL static do_file_copyW( LPCWSTR source, LPCWSTR target, DWORD style)
if ((GetFileAttributesW(target) != INVALID_FILE_ATTRIBUTES) && if ((GetFileAttributesW(target) != INVALID_FILE_ATTRIBUTES) &&
(GetFileAttributesW(source) != INVALID_FILE_ATTRIBUTES)) (GetFileAttributesW(source) != INVALID_FILE_ATTRIBUTES))
{ {
VersionSizeSource = GetFileVersionInfoSizeW(source,&zero); VersionSizeSource = GetFileVersionInfoSizeW((LPWSTR)source,&zero);
VersionSizeTarget = GetFileVersionInfoSizeW(target,&zero); VersionSizeTarget = GetFileVersionInfoSizeW((LPWSTR)target,&zero);
} }
TRACE("SizeTarget %li ... SizeSource %li\n",VersionSizeTarget, TRACE("SizeTarget %li ... SizeSource %li\n",VersionSizeTarget,
@ -998,9 +998,9 @@ BOOL static do_file_copyW( LPCWSTR source, LPCWSTR target, DWORD style)
VersionSource = HeapAlloc(GetProcessHeap(),0,VersionSizeSource); VersionSource = HeapAlloc(GetProcessHeap(),0,VersionSizeSource);
VersionTarget = HeapAlloc(GetProcessHeap(),0,VersionSizeTarget); VersionTarget = HeapAlloc(GetProcessHeap(),0,VersionSizeTarget);
ret = GetFileVersionInfoW(source,0,VersionSizeSource,VersionSource); ret = GetFileVersionInfoW((LPWSTR)source,0,VersionSizeSource,VersionSource);
if (ret) if (ret)
ret = GetFileVersionInfoW(target, 0, VersionSizeTarget, ret = GetFileVersionInfoW((LPWSTR)target, 0, VersionSizeTarget,
VersionTarget); VersionTarget);
if (ret) if (ret)

View file

@ -63,7 +63,7 @@
@ stub SetupCancelTemporarySourceList @ stub SetupCancelTemporarySourceList
@ stdcall SetupCloseFileQueue(ptr) @ stdcall SetupCloseFileQueue(ptr)
@ stdcall SetupCloseInfFile(long) @ stdcall SetupCloseInfFile(long)
@ stub SetupCommitFileQueue @ stdcall SetupCommitFileQueue(long long ptr ptr) SetupCommitFileQueueW
@ stdcall SetupCommitFileQueueA(long long ptr ptr) @ stdcall SetupCommitFileQueueA(long long ptr ptr)
@ stdcall SetupCommitFileQueueW(long long ptr ptr) @ stdcall SetupCommitFileQueueW(long long ptr ptr)
@ stub SetupCopyErrorA @ stub SetupCopyErrorA
@ -81,23 +81,27 @@
@ stub SetupDeleteErrorW @ stub SetupDeleteErrorW
@ stdcall SetupDestroyDiskSpaceList(long) @ stdcall SetupDestroyDiskSpaceList(long)
@ stub SetupDiAskForOEMDisk @ stub SetupDiAskForOEMDisk
@ stub SetupDiBuildClassInfoList @ stdcall SetupDiBuildClassInfoList(long ptr long ptr)
@ stdcall SetupDiBuildClassInfoListExA(long ptr long ptr str ptr)
@ stdcall SetupDiBuildClassInfoListExW(long ptr long ptr wstr ptr) @ stdcall SetupDiBuildClassInfoListExW(long ptr long ptr wstr ptr)
@ stub SetupDiBuildDriverInfoList @ stub SetupDiBuildDriverInfoList
@ stub SetupDiCallClassInstaller @ stub SetupDiCallClassInstaller
@ stub SetupDiCancelDriverInfoSearch @ stub SetupDiCancelDriverInfoSearch
@ stub SetupDiChangeState @ stub SetupDiChangeState
@ stub SetupDiClassGuidsFromNameA @ stdcall SetupDiClassGuidsFromNameA(str ptr long ptr)
@ stdcall SetupDiClassGuidsFromNameExA(str ptr long ptr str ptr)
@ stdcall SetupDiClassGuidsFromNameExW(wstr ptr long ptr wstr ptr) @ stdcall SetupDiClassGuidsFromNameExW(wstr ptr long ptr wstr ptr)
@ stub SetupDiClassGuidsFromNameW @ stdcall SetupDiClassGuidsFromNameW(wstr ptr long ptr)
@ stub SetupDiClassNameFromGuidA @ stdcall SetupDiClassNameFromGuidA(ptr str long ptr)
@ stdcall SetupDiClassNameFromGuidExW(ptr ptr long ptr wstr ptr) @ stdcall SetupDiClassNameFromGuidExA(ptr str long ptr wstr ptr)
@ stub SetupDiClassNameFromGuidW @ stdcall SetupDiClassNameFromGuidExW(ptr wstr long ptr wstr ptr)
@ stdcall SetupDiClassNameFromGuidW(ptr wstr long ptr)
@ stub SetupDiCreateDevRegKeyA @ stub SetupDiCreateDevRegKeyA
@ stub SetupDiCreateDevRegKeyW @ stub SetupDiCreateDevRegKeyW
@ stub SetupDiCreateDeviceInfoA @ stub SetupDiCreateDeviceInfoA
@ stdcall SetupDiCreateDeviceInfoList(ptr ptr) @ stdcall SetupDiCreateDeviceInfoList(ptr ptr)
@ stdcall SetupDiCreateDeviceInfoListExW(ptr long str ptr) @ stdcall SetupDiCreateDeviceInfoListExA(ptr long str ptr)
@ stdcall SetupDiCreateDeviceInfoListExW(ptr long wstr ptr)
@ stub SetupDiCreateDeviceInfoW @ stub SetupDiCreateDeviceInfoW
@ stub SetupDiDeleteDevRegKey @ stub SetupDiDeleteDevRegKey
@ stub SetupDiDeleteDeviceInfo @ stub SetupDiDeleteDeviceInfo
@ -109,12 +113,13 @@
@ stdcall SetupDiEnumDeviceInterfaces(long ptr ptr long ptr) @ stdcall SetupDiEnumDeviceInterfaces(long ptr ptr long ptr)
@ stub SetupDiEnumDriverInfoA @ stub SetupDiEnumDriverInfoA
@ stub SetupDiEnumDriverInfoW @ stub SetupDiEnumDriverInfoW
@ stub SetupDiGetActualSectionToInstallA @ stdcall SetupDiGetActualSectionToInstallA(long str str long ptr ptr)
@ stub SetupDiGetActualSectionToInstallW @ stdcall SetupDiGetActualSectionToInstallW(long wstr wstr long ptr ptr)
@ stub SetupDiGetClassBitmapIndex @ stub SetupDiGetClassBitmapIndex
@ stub SetupDiGetClassDescriptionA @ stdcall SetupDiGetClassDescriptionA(ptr str long ptr)
@ stdcall SetupDiGetClassDescriptionExW(ptr ptr long ptr wstr ptr) @ stdcall SetupDiGetClassDescriptionExA(ptr str long ptr str ptr)
@ stub SetupDiGetClassDescriptionW @ stdcall SetupDiGetClassDescriptionExW(ptr wstr long ptr wstr ptr)
@ stdcall SetupDiGetClassDescriptionW(ptr wstr long ptr)
@ stub SetupDiGetClassDevPropertySheetsA @ stub SetupDiGetClassDevPropertySheetsA
@ stub SetupDiGetClassDevPropertySheetsW @ stub SetupDiGetClassDevPropertySheetsW
@ stdcall SetupDiGetClassDevsA(ptr ptr long long) @ stdcall SetupDiGetClassDevsA(ptr ptr long long)
@ -151,13 +156,14 @@
@ stub SetupDiGetSelectedDriverA @ stub SetupDiGetSelectedDriverA
@ stub SetupDiGetSelectedDriverW @ stub SetupDiGetSelectedDriverW
@ stub SetupDiGetWizardPage @ stub SetupDiGetWizardPage
@ stub SetupDiInstallClassA @ stdcall SetupDiInstallClassA(long str long ptr)
@ stub SetupDiInstallClassW @ stdcall SetupDiInstallClassW(long wstr long ptr)
@ stub SetupDiInstallDevice @ stub SetupDiInstallDevice
@ stub SetupDiInstallDriverFiles @ stub SetupDiInstallDriverFiles
@ stub SetupDiLoadClassIcon @ stub SetupDiLoadClassIcon
@ stub SetupDiMoveDuplicateDevice @ stub SetupDiMoveDuplicateDevice
@ stub SetupDiOpenClassRegKey @ stdcall SetupDiOpenClassRegKey(ptr long)
@ stdcall SetupDiOpenClassRegKeyExA(ptr long long str ptr)
@ stdcall SetupDiOpenClassRegKeyExW(ptr long long wstr ptr) @ stdcall SetupDiOpenClassRegKeyExW(ptr long long wstr ptr)
@ stub SetupDiOpenDevRegKey @ stub SetupDiOpenDevRegKey
@ stub SetupDiOpenDeviceInfoA @ stub SetupDiOpenDeviceInfoA
@ -239,7 +245,7 @@
@ stdcall SetupOpenFileQueue() @ stdcall SetupOpenFileQueue()
@ stdcall SetupOpenInfFileA(str str long ptr) @ stdcall SetupOpenInfFileA(str str long ptr)
@ stdcall SetupOpenInfFileW(wstr wstr long ptr) @ stdcall SetupOpenInfFileW(wstr wstr long ptr)
@ stub SetupOpenMasterInf @ stdcall SetupOpenMasterInf()
@ stub SetupPromptForDiskA @ stub SetupPromptForDiskA
@ stub SetupPromptForDiskW @ stub SetupPromptForDiskW
@ stub SetupPromptReboot @ stub SetupPromptReboot

View file

@ -50,44 +50,6 @@ DWORD WINAPI suErrorToIds16( WORD w1, WORD w2 )
return 0; return 0;
} }
/***********************************************************************
* SetupDiOpenClassRegKeyExW (SETUPAPI.@)
*
* WINAPI in description not given
*/
HKEY WINAPI SetupDiOpenClassRegKeyExW(const GUID* class, REGSAM access, DWORD flags, PCWSTR machine, PVOID reserved)
{
FIXME("\n");
return INVALID_HANDLE_VALUE;
}
/***********************************************************************
* SetupDiGetClassDescriptionExW (SETUPAPI.@)
*/
BOOL WINAPI SetupDiGetClassDescriptionExW (const GUID* class, PWSTR desc, DWORD size, PDWORD required, PCWSTR machine, PVOID reserved)
{
FIXME("\n");
return FALSE;
}
/***********************************************************************
* SetupDiClassNameFromGuidExW (SETUPAPI.@)
*/
BOOL WINAPI SetupDiClassNameFromGuidExW (const GUID* class, PWSTR desc, DWORD size, PDWORD required, PCWSTR machine, PVOID reserved)
{
FIXME("\n");
return FALSE;
}
/***********************************************************************
* SetupDiBuildClassInfoListExW (SETUPAPI.@)
*/
BOOL WINAPI SetupDiBuildClassInfoListExW(DWORD flags, LPGUID list, DWORD size, PDWORD required, LPCWSTR machine, PVOID reserved)
{
FIXME("\n");
return FALSE;
}
/*********************************************************************** /***********************************************************************
* SetupDiGetDeviceInfoListDetailA (SETUPAPI.@) * SetupDiGetDeviceInfoListDetailA (SETUPAPI.@)
*/ */
@ -106,26 +68,9 @@ BOOL WINAPI SetupDiGetDeviceInfoListDetailW(HDEVINFO devinfo, PSP_DEVINFO_LIST_D
return FALSE; return FALSE;
} }
/***********************************************************************
* SetupDiCreateDeviceInfoListA (SETUPAPI.@)
*/
HDEVINFO WINAPI SetupDiCreateDeviceInfoList(const GUID *class, HWND parend)
{
FIXME("\n");
return FALSE;
}
/*********************************************************************** /***********************************************************************
* SetupDiCreateDeviceInfoListExW (SETUPAPI.@) * SetupDiGetClassDevsExA (SETUPAPI.@)
*/
HDEVINFO WINAPI SetupDiCreateDeviceInfoListExW(const GUID *class, HWND parend , PCWSTR machine, PVOID reserved)
{
FIXME("\n");
return FALSE;
}
/***********************************************************************
* (SETUPAPI.@)
* *
* NO WINAPI in description given * NO WINAPI in description given
*/ */
@ -136,7 +81,7 @@ HDEVINFO WINAPI SetupDiGetClassDevsExA(const GUID *class, PCSTR filter, HWND par
} }
/*********************************************************************** /***********************************************************************
* (SETUPAPI.@) * SetupDiGetClassDevsExW (SETUPAPI.@)
* *
* NO WINAPI in description given * NO WINAPI in description given
*/ */
@ -146,15 +91,6 @@ HDEVINFO WINAPI SetupDiGetClassDevsExW(const GUID *class, PCWSTR filter, HWND pa
return FALSE; return FALSE;
} }
/***********************************************************************
* SetupDiClassGuidsFromNameExW (SETUPAPI.@)
*/
BOOL WINAPI SetupDiClassGuidsFromNameExW(LPCWSTR class, LPGUID list, DWORD size, PDWORD required, LPCWSTR machine, PVOID reserved)
{
FIXME("\n");
return FALSE;
}
/*********************************************************************** /***********************************************************************
* CM_Connect_MachineW (SETUPAPI.@) * CM_Connect_MachineW (SETUPAPI.@)
*/ */