537{
544 INT CharacteristicsInt;
545 DWORD Characteristics;
553
556
558
559
562 {
564 ERR(
"SetupDiGetSelectedDriverW() failed with error 0x%lx\n", rc);
566 }
567
571 {
573 ERR(
"SetupDiGetDriverInfoDetailW() failed with error 0x%lx\n", rc);
575 }
576
579 {
581 ERR(
"SetupOpenInfFileW() failed with error 0x%lx\n", rc);
583 }
584
586 {
588 ERR(
"SetupDiGetActualSectionToInstallW() failed with error 0x%lx\n", rc);
590 }
591
592
594 {
596 ERR(
"Unable to find key %S in section %S of file %S (error 0x%lx)\n",
597 L"Characteristics", SectionName, DriverInfoDetail.
InfFileName, rc);
599 }
600
602 {
604 ERR(
"SetupGetIntField() failed with error 0x%lx\n", rc);
606 }
607
608 Characteristics = (
DWORD)CharacteristicsInt;
610 {
612 {
614 {
616 ERR(
"SetupGetStringFieldW() failed with error 0x%lx\n", rc);
618 }
619
622 {
623 ERR(
"HeapAlloc() failed\n");
626 }
627
629 {
631 ERR(
"SetupGetStringFieldW() failed with error 0x%lx\n", rc);
633 }
634 }
635 }
636
637
640 {
641 ERR(
"UuidCreate() failed with RPC status 0x%lx\n", RpcStatus);
644 }
645
648 {
649 ERR(
"UuidToStringW() failed with RPC status 0x%lx\n", RpcStatus);
652 }
653
654
656 if (!UuidString)
657 {
658 ERR(
"HeapAlloc() failed\n");
661 }
662
664 wcscat(UuidString, UuidRpcString);
666
675 else
676 {
677 ERR(
"Invalid class guid\n");
679 }
680
684 if (UuidRpcString !=
NULL)
688
689 TRACE(
"Returning 0x%lx\n", rc);
690 return rc;
691}
#define ERROR_INSUFFICIENT_BUFFER
BOOL WINAPI SetupDiGetActualSectionToInstallW(HINF InfHandle, PCWSTR InfSectionName, PWSTR InfSectionWithExt, DWORD InfSectionWithExtSize, PDWORD RequiredSize, PWSTR *Extension)
BOOL WINAPI SetupDiGetSelectedDriverW(IN HDEVINFO DeviceInfoSet, IN PSP_DEVINFO_DATA DeviceInfoData OPTIONAL, OUT PSP_DRVINFO_DATA_W DriverInfoData)
BOOL WINAPI SetupDiGetDriverInfoDetailW(IN HDEVINFO DeviceInfoSet, IN PSP_DEVINFO_DATA DeviceInfoData OPTIONAL, IN PSP_DRVINFO_DATA_W DriverInfoData, IN OUT PSP_DRVINFO_DETAIL_DATA_W DriverInfoDetailData OPTIONAL, IN DWORD DriverInfoDetailDataSize, OUT PDWORD RequiredSize OPTIONAL)
HINF WINAPI SetupOpenInfFileW(PCWSTR name, PCWSTR class, DWORD style, UINT *error)
static DWORD InstallNetDevice(IN HDEVINFO DeviceInfoSet, IN PSP_DEVINFO_DATA DeviceInfoData, LPCWSTR UuidString, DWORD Characteristics, LPCWSTR BusType)
static DWORD InstallNetService(VOID)
static DWORD InstallNetTransport(VOID)
static DWORD InstallNetClient(VOID)
#define IsEqualIID(riid1, riid2)
RPC_STATUS WINAPI UuidToStringW(UUID *Uuid, RPC_WSTR *StringUuid)
RPC_STATUS WINAPI RpcStringFreeW(RPC_WSTR *String)
RPC_STATUS WINAPI UuidCreate(UUID *Uuid)
struct _SP_DRVINFO_DETAIL_DATA_W SP_DRVINFO_DETAIL_DATA_W
SP_DRVINFO_DATA_V2_W SP_DRVINFO_DATA_W
#define ERROR_DI_DO_DEFAULT
#define DIF_INSTALLDEVICE
WCHAR SectionName[LINE_LEN]
WCHAR InfFileName[MAX_PATH]
BOOL WINAPI SetupGetStringFieldW(IN PINFCONTEXT Context, IN ULONG FieldIndex, OUT PWSTR ReturnBuffer, IN ULONG ReturnBufferSize, OUT PULONG RequiredSize)
BOOL WINAPI SetupFindFirstLineW(IN HINF InfHandle, IN PCWSTR Section, IN PCWSTR Key, IN OUT PINFCONTEXT Context)
BOOL WINAPI SetupGetIntField(IN PINFCONTEXT Context, IN ULONG FieldIndex, OUT INT *IntegerValue)
VOID WINAPI SetupCloseInfFile(IN HINF InfHandle)
#define RPC_S_UUID_LOCAL_ONLY