From: Eric Kohl Date: Fri, 26 Sep 2014 09:47:02 +0000 (+0000) Subject: [UMPNPMGR] X-Git-Tag: backups/0.3.17@66124~436 X-Git-Url: https://git.reactos.org/?p=reactos.git;a=commitdiff_plain;h=cd97d921f9b0313f3d0fb66b46e2938375207a0d [UMPNPMGR] Use the stdcall calling convention for the PNP_* functions and export the missing functions. svn path=/trunk/; revision=64304 --- diff --git a/reactos/base/services/umpnpmgr/umpnpmgr.c b/reactos/base/services/umpnpmgr/umpnpmgr.c index 86da35eef4c..eb8051498cd 100644 --- a/reactos/base/services/umpnpmgr/umpnpmgr.c +++ b/reactos/base/services/umpnpmgr/umpnpmgr.c @@ -179,7 +179,9 @@ NtStatusToCrError(NTSTATUS Status) /* Function 0 */ -DWORD PNP_Disconnect( +DWORD +WINAPI +PNP_Disconnect( handle_t hBinding) { UNREFERENCED_PARAMETER(hBinding); @@ -188,7 +190,9 @@ DWORD PNP_Disconnect( /* Function 1 */ -DWORD PNP_Connect( +DWORD +WINAPI +PNP_Connect( handle_t hBinding) { UNREFERENCED_PARAMETER(hBinding); @@ -197,7 +201,9 @@ DWORD PNP_Connect( /* Function 2 */ -DWORD PNP_GetVersion( +DWORD +WINAPI +PNP_GetVersion( handle_t hBinding, WORD *pVersion) { @@ -209,7 +215,9 @@ DWORD PNP_GetVersion( /* Function 3 */ -DWORD PNP_GetGlobalState( +DWORD +WINAPI +PNP_GetGlobalState( handle_t hBinding, DWORD *pulState, DWORD ulFlags) @@ -223,7 +231,9 @@ DWORD PNP_GetGlobalState( /* Function 4 */ -DWORD PNP_InitDetection( +DWORD +WINAPI +PNP_InitDetection( handle_t hBinding) { UNREFERENCED_PARAMETER(hBinding); @@ -234,7 +244,9 @@ DWORD PNP_InitDetection( /* Function 5 */ -DWORD PNP_ReportLogOn( +DWORD +WINAPI +PNP_ReportLogOn( handle_t hBinding, BOOL Admin, DWORD ProcessId) @@ -283,7 +295,9 @@ cleanup: /* Function 6 */ -DWORD PNP_ValidateDeviceInstance( +DWORD +WINAPI +PNP_ValidateDeviceInstance( handle_t hBinding, LPWSTR pDeviceID, DWORD ulFlags) @@ -321,7 +335,9 @@ Done: /* Function 7 */ -DWORD PNP_GetRootDeviceInstance( +DWORD +WINAPI +PNP_GetRootDeviceInstance( handle_t hBinding, LPWSTR pDeviceID, PNP_RPC_STRING_LEN ulLength) @@ -354,7 +370,9 @@ Done: /* Function 8 */ -DWORD PNP_GetRelatedDeviceInstance( +DWORD +WINAPI +PNP_GetRelatedDeviceInstance( handle_t hBinding, DWORD ulRelationship, LPWSTR pDeviceID, @@ -400,7 +418,9 @@ DWORD PNP_GetRelatedDeviceInstance( /* Function 9 */ -DWORD PNP_EnumerateSubKeys( +DWORD +WINAPI +PNP_EnumerateSubKeys( handle_t hBinding, DWORD ulBranch, DWORD ulIndex, @@ -457,7 +477,9 @@ DWORD PNP_EnumerateSubKeys( /* Function 10 */ -DWORD PNP_GetDeviceList( +DWORD +WINAPI +PNP_GetDeviceList( handle_t hBinding, LPWSTR pszFilter, LPWSTR Buffer, @@ -470,7 +492,9 @@ DWORD PNP_GetDeviceList( /* Function 11 */ -DWORD PNP_GetDeviceListSize( +DWORD +WINAPI +PNP_GetDeviceListSize( handle_t hBinding, LPWSTR pszFilter, PNP_RPC_BUFFER_SIZE *pulLen, @@ -482,7 +506,9 @@ DWORD PNP_GetDeviceListSize( /* Function 12 */ -DWORD PNP_GetDepth( +DWORD +WINAPI +PNP_GetDepth( handle_t hBinding, LPWSTR pszDeviceID, DWORD *pulDepth, @@ -519,7 +545,9 @@ DWORD PNP_GetDepth( /* Function 13 */ -DWORD PNP_GetDeviceRegProp( +DWORD +WINAPI +PNP_GetDeviceRegProp( handle_t hBinding, LPWSTR pDeviceID, DWORD ulProperty, @@ -838,7 +866,9 @@ done: /* Function 14 */ -DWORD PNP_SetDeviceRegProp( +DWORD +WINAPI +PNP_SetDeviceRegProp( handle_t hBinding, LPWSTR pDeviceId, DWORD ulProperty, @@ -978,7 +1008,9 @@ DWORD PNP_SetDeviceRegProp( /* Function 15 */ -DWORD PNP_GetClassInstance( +DWORD +WINAPI +PNP_GetClassInstance( handle_t hBinding, LPWSTR pDeviceId, LPWSTR pszClassInstance, @@ -990,7 +1022,9 @@ DWORD PNP_GetClassInstance( /* Function 16 */ -DWORD PNP_CreateKey( +DWORD +WINAPI +PNP_CreateKey( handle_t hBinding, LPWSTR pszSubKey, DWORD samDesired, @@ -1018,7 +1052,9 @@ DWORD PNP_CreateKey( /* Function 17 */ -DWORD PNP_DeleteRegistryKey( +DWORD +WINAPI +PNP_DeleteRegistryKey( handle_t hBinding, LPWSTR pszDeviceID, LPWSTR pszParentKey, @@ -1031,7 +1067,9 @@ DWORD PNP_DeleteRegistryKey( /* Function 18 */ -DWORD PNP_GetClassCount( +DWORD +WINAPI +PNP_GetClassCount( handle_t hBinding, DWORD *pulClassCount, DWORD ulFlags) @@ -1071,7 +1109,9 @@ DWORD PNP_GetClassCount( /* Function 19 */ -DWORD PNP_GetClassName( +DWORD +WINAPI +PNP_GetClassName( handle_t hBinding, LPWSTR pszClassGuid, LPWSTR Buffer, @@ -1125,7 +1165,9 @@ DWORD PNP_GetClassName( /* Function 20 */ -DWORD PNP_DeleteClassKey( +DWORD +WINAPI +PNP_DeleteClassKey( handle_t hBinding, LPWSTR pszClassGuid, DWORD ulFlags) @@ -1154,7 +1196,9 @@ DWORD PNP_DeleteClassKey( /* Function 21 */ -DWORD PNP_GetInterfaceDeviceAlias( +DWORD +WINAPI +PNP_GetInterfaceDeviceAlias( handle_t hBinding, LPWSTR pszInterfaceDevice, GUID *AliasInterfaceGuid, @@ -1169,7 +1213,9 @@ DWORD PNP_GetInterfaceDeviceAlias( /* Function 22 */ -DWORD PNP_GetInterfaceDeviceList( +DWORD +WINAPI +PNP_GetInterfaceDeviceList( handle_t hBinding, GUID *InterfaceGuid, LPWSTR pszDeviceID, @@ -1183,7 +1229,9 @@ DWORD PNP_GetInterfaceDeviceList( /* Function 23 */ -DWORD PNP_GetInterfaceDeviceListSize( +DWORD +WINAPI +PNP_GetInterfaceDeviceListSize( handle_t hBinding, PNP_RPC_BUFFER_SIZE *pulLen, GUID *InterfaceGuid, @@ -1196,7 +1244,9 @@ DWORD PNP_GetInterfaceDeviceListSize( /* Function 24 */ -DWORD PNP_RegisterDeviceClassAssociation( +DWORD +WINAPI +PNP_RegisterDeviceClassAssociation( handle_t hBinding, LPWSTR pszDeviceID, GUID *InterfaceGuid, @@ -1212,7 +1262,9 @@ DWORD PNP_RegisterDeviceClassAssociation( /* Function 25 */ -DWORD PNP_UnregisterDeviceClassAssociation( +DWORD +WINAPI +PNP_UnregisterDeviceClassAssociation( handle_t hBinding, LPWSTR pszInterfaceDevice, DWORD ulFlags) @@ -1223,7 +1275,9 @@ DWORD PNP_UnregisterDeviceClassAssociation( /* Function 26 */ -DWORD PNP_GetClassRegProp( +DWORD +WINAPI +PNP_GetClassRegProp( handle_t hBinding, LPWSTR pszClassGuid, DWORD ulProperty, @@ -1345,7 +1399,9 @@ done: /* Function 27 */ -DWORD PNP_SetClassRegProp( +DWORD +WINAPI +PNP_SetClassRegProp( handle_t hBinding, LPWSTR pszClassGuid, DWORD ulProperty, @@ -1596,7 +1652,9 @@ CreateDeviceInstance(LPWSTR pszDeviceID) /* Function 28 */ -DWORD PNP_CreateDevInst( +DWORD +WINAPI +PNP_CreateDevInst( handle_t hBinding, LPWSTR pszDeviceID, LPWSTR pszParentDeviceID, @@ -1708,7 +1766,9 @@ ReenumerateDeviceInstance(LPWSTR pszDeviceInstance) /* Function 29 */ -DWORD PNP_DeviceInstanceAction( +DWORD +WINAPI +PNP_DeviceInstanceAction( handle_t hBinding, DWORD ulAction, DWORD ulFlags, @@ -1757,7 +1817,9 @@ DWORD PNP_DeviceInstanceAction( /* Function 30 */ -DWORD PNP_GetDeviceStatus( +DWORD +WINAPI +PNP_GetDeviceStatus( handle_t hBinding, LPWSTR pDeviceID, DWORD *pulStatus, @@ -1797,7 +1859,9 @@ DWORD PNP_GetDeviceStatus( /* Function 31 */ -DWORD PNP_SetDeviceProblem( +DWORD +WINAPI +PNP_SetDeviceProblem( handle_t hBinding, LPWSTR pDeviceID, DWORD ulProblem, @@ -1809,7 +1873,9 @@ DWORD PNP_SetDeviceProblem( /* Function 32 */ -DWORD PNP_DisableDevInst( +DWORD +WINAPI +PNP_DisableDevInst( handle_t hBinding, LPWSTR pDeviceID, PPNP_VETO_TYPE pVetoType, @@ -1822,7 +1888,9 @@ DWORD PNP_DisableDevInst( } /* Function 33 */ -DWORD PNP_UninstallDevInst( +DWORD +WINAPI +PNP_UninstallDevInst( handle_t hBinding, LPWSTR pDeviceID, DWORD ulFlags) @@ -1875,7 +1943,9 @@ AppendDeviceId(LPWSTR lpDeviceIdList, /* Function 34 */ -DWORD PNP_AddID( +DWORD +WINAPI +PNP_AddID( handle_t hBinding, LPWSTR pszDeviceID, LPWSTR pszID, @@ -1982,7 +2052,9 @@ Done: /* Function 35 */ -DWORD PNP_RegisterDriver( +DWORD +WINAPI +PNP_RegisterDriver( handle_t hBinding, LPWSTR pszDeviceID, DWORD ulFlags) @@ -1993,7 +2065,9 @@ DWORD PNP_RegisterDriver( /* Function 36 */ -DWORD PNP_QueryRemove( +DWORD +WINAPI +PNP_QueryRemove( handle_t hBinding, LPWSTR pszDeviceID, PPNP_VETO_TYPE pVetoType, @@ -2007,7 +2081,9 @@ DWORD PNP_QueryRemove( /* Function 37 */ -DWORD PNP_RequestDeviceEject( +DWORD +WINAPI +PNP_RequestDeviceEject( handle_t hBinding, LPWSTR pszDeviceID, PPNP_VETO_TYPE pVetoType, @@ -2019,10 +2095,13 @@ DWORD PNP_RequestDeviceEject( return CR_CALL_NOT_IMPLEMENTED; } + /* Function 38 */ CONFIGRET -PNP_IsDockStationPresent(handle_t hBinding, - BOOL *Present) +WINAPI +PNP_IsDockStationPresent( + handle_t hBinding, + BOOL *Present) { HKEY hKey; DWORD dwType; @@ -2073,7 +2152,9 @@ PNP_IsDockStationPresent(handle_t hBinding, /* Function 39 */ -DWORD PNP_RequestEjectPC( +DWORD +WINAPI +PNP_RequestEjectPC( handle_t hBinding) { UNIMPLEMENTED; @@ -2082,7 +2163,9 @@ DWORD PNP_RequestEjectPC( /* Function 40 */ -DWORD PNP_HwProfFlags( +DWORD +WINAPI +PNP_HwProfFlags( handle_t hBinding, DWORD ulAction, LPWSTR pDeviceID, @@ -2161,7 +2244,9 @@ DWORD PNP_HwProfFlags( /* Function 41 */ -DWORD PNP_GetHwProfInfo( +DWORD +WINAPI +PNP_GetHwProfInfo( handle_t hBinding, DWORD ulIndex, HWPROFILEINFO *pHWProfileInfo, @@ -2294,7 +2379,9 @@ done: /* Function 42 */ -DWORD PNP_AddEmptyLogConf( +DWORD +WINAPI +PNP_AddEmptyLogConf( handle_t hBinding, LPWSTR pDeviceID, DWORD ulPriority, @@ -2307,7 +2394,9 @@ DWORD PNP_AddEmptyLogConf( /* Function 43 */ -DWORD PNP_FreeLogConf( +DWORD +WINAPI +PNP_FreeLogConf( handle_t hBinding, LPWSTR pDeviceID, DWORD ulLogConfType, @@ -2320,7 +2409,9 @@ DWORD PNP_FreeLogConf( /* Function 44 */ -DWORD PNP_GetFirstLogConf( +DWORD +WINAPI +PNP_GetFirstLogConf( handle_t hBinding, LPWSTR pDeviceID, DWORD ulLogConfType, @@ -2333,7 +2424,9 @@ DWORD PNP_GetFirstLogConf( /* Function 45 */ -DWORD PNP_GetNextLogConf( +DWORD +WINAPI +PNP_GetNextLogConf( handle_t hBinding, LPWSTR pDeviceID, DWORD ulLogConfType, @@ -2347,7 +2440,9 @@ DWORD PNP_GetNextLogConf( /* Function 46 */ -DWORD PNP_GetLogConfPriority( +DWORD +WINAPI +PNP_GetLogConfPriority( handle_t hBinding, LPWSTR pDeviceID, DWORD ulType, @@ -2361,7 +2456,9 @@ DWORD PNP_GetLogConfPriority( /* Function 47 */ -DWORD PNP_AddResDes( +DWORD +WINAPI +PNP_AddResDes( handle_t hBinding, LPWSTR pDeviceID, DWORD ulLogConfTag, @@ -2378,7 +2475,9 @@ DWORD PNP_AddResDes( /* Function 48 */ -DWORD PNP_FreeResDes( +DWORD +WINAPI +PNP_FreeResDes( handle_t hBinding, LPWSTR pDeviceID, DWORD ulLogConfTag, @@ -2395,7 +2494,9 @@ DWORD PNP_FreeResDes( /* Function 49 */ -DWORD PNP_GetNextResDes( +DWORD +WINAPI +PNP_GetNextResDes( handle_t hBinding, LPWSTR pDeviceID, DWORD ulLogConfTag, @@ -2412,7 +2513,9 @@ DWORD PNP_GetNextResDes( /* Function 50 */ -DWORD PNP_GetResDesData( +DWORD +WINAPI +PNP_GetResDesData( handle_t hBinding, LPWSTR pDeviceID, DWORD ulLogConfTag, @@ -2429,7 +2532,9 @@ DWORD PNP_GetResDesData( /* Function 51 */ -DWORD PNP_GetResDesDataSize( +DWORD +WINAPI +PNP_GetResDesDataSize( handle_t hBinding, LPWSTR pDeviceID, DWORD ulLogConfTag, @@ -2445,7 +2550,9 @@ DWORD PNP_GetResDesDataSize( /* Function 52 */ -DWORD PNP_ModifyResDes( +DWORD +WINAPI +PNP_ModifyResDes( handle_t hBinding, LPWSTR pDeviceID, DWORD ulLogConfTag, @@ -2463,7 +2570,9 @@ DWORD PNP_ModifyResDes( /* Function 53 */ -DWORD PNP_DetectResourceConflict( +DWORD +WINAPI +PNP_DetectResourceConflict( handle_t hBinding, LPWSTR pDeviceID, RESOURCEID ResourceID, @@ -2478,7 +2587,9 @@ DWORD PNP_DetectResourceConflict( /* Function 54 */ -DWORD PNP_QueryResConfList( +DWORD +WINAPI +PNP_QueryResConfList( handle_t hBinding, LPWSTR pDeviceID, RESOURCEID ResourceID, @@ -2494,7 +2605,9 @@ DWORD PNP_QueryResConfList( /* Function 55 */ -DWORD PNP_SetHwProf( +DWORD +WINAPI +PNP_SetHwProf( handle_t hBinding, DWORD ulHardwareProfile, DWORD ulFlags) @@ -2505,7 +2618,9 @@ DWORD PNP_SetHwProf( /* Function 56 */ -DWORD PNP_QueryArbitratorFreeData( +DWORD +WINAPI +PNP_QueryArbitratorFreeData( handle_t hBinding, BYTE *pData, DWORD DataLen, @@ -2519,7 +2634,9 @@ DWORD PNP_QueryArbitratorFreeData( /* Function 57 */ -DWORD PNP_QueryArbitratorFreeSize( +DWORD +WINAPI +PNP_QueryArbitratorFreeSize( handle_t hBinding, DWORD *pulSize, LPWSTR pDeviceID, @@ -2533,6 +2650,7 @@ DWORD PNP_QueryArbitratorFreeSize( /* Function 58 */ CONFIGRET +WINAPI PNP_RunDetection( handle_t hBinding, DWORD ulFlags) @@ -2542,7 +2660,9 @@ PNP_RunDetection( /* Function 59 */ -DWORD PNP_RegisterNotification( +DWORD +WINAPI +PNP_RegisterNotification( handle_t hBinding) { UNIMPLEMENTED; @@ -2551,7 +2671,9 @@ DWORD PNP_RegisterNotification( /* Function 60 */ -DWORD PNP_UnregisterNotification( +DWORD +WINAPI +PNP_UnregisterNotification( handle_t hBinding) { UNIMPLEMENTED; @@ -2560,7 +2682,9 @@ DWORD PNP_UnregisterNotification( /* Function 61 */ -DWORD PNP_GetCustomDevProp( +DWORD +WINAPI +PNP_GetCustomDevProp( handle_t hBinding, LPWSTR pDeviceID, LPWSTR CustomPropName, @@ -2654,19 +2778,21 @@ done: /* Function 62 */ -DWORD PNP_GetVersionInternal( +DWORD +WINAPI +PNP_GetVersionInternal( handle_t hBinding, WORD *pwVersion) { *pwVersion = 0x501; return CR_SUCCESS; - UNIMPLEMENTED; - return CR_CALL_NOT_IMPLEMENTED; } /* Function 63 */ -DWORD PNP_GetBlockedDriverInfo( +DWORD +WINAPI +PNP_GetBlockedDriverInfo( handle_t hBinding, BYTE *Buffer, PNP_RPC_BUFFER_SIZE *pulTransferLen, @@ -2679,7 +2805,9 @@ DWORD PNP_GetBlockedDriverInfo( /* Function 64 */ -DWORD PNP_GetServerSideDeviceInstallFlags( +DWORD +WINAPI +PNP_GetServerSideDeviceInstallFlags( handle_t hBinding, DWORD *pulSSDIFlags, DWORD ulFlags) @@ -2690,7 +2818,9 @@ DWORD PNP_GetServerSideDeviceInstallFlags( /* Function 65 */ -DWORD PNP_GetObjectPropKeys( +DWORD +WINAPI +PNP_GetObjectPropKeys( handle_t hBinding, LPWSTR ObjectName, DWORD ObjectType, @@ -2706,7 +2836,9 @@ DWORD PNP_GetObjectPropKeys( /* Function 66 */ -DWORD PNP_GetObjectProp( +DWORD +WINAPI +PNP_GetObjectProp( handle_t hBinding, LPWSTR ObjectName, DWORD ObjectType, @@ -2724,7 +2856,9 @@ DWORD PNP_GetObjectProp( /* Function 67 */ -DWORD PNP_SetObjectProp( +DWORD +WINAPI +PNP_SetObjectProp( handle_t hBinding, LPWSTR ObjectName, DWORD ObjectType, @@ -2741,7 +2875,9 @@ DWORD PNP_SetObjectProp( /* Function 68 */ -DWORD PNP_InstallDevInst( +DWORD +WINAPI +PNP_InstallDevInst( handle_t hBinding) { UNIMPLEMENTED; @@ -2750,7 +2886,9 @@ DWORD PNP_InstallDevInst( /* Function 69 */ -DWORD PNP_ApplyPowerSettings( +DWORD +WINAPI +PNP_ApplyPowerSettings( handle_t hBinding) { UNIMPLEMENTED; @@ -2759,7 +2897,9 @@ DWORD PNP_ApplyPowerSettings( /* Function 70 */ -DWORD PNP_DriverStoreAddDriverPackage( +DWORD +WINAPI +PNP_DriverStoreAddDriverPackage( handle_t hBinding) { UNIMPLEMENTED; @@ -2768,7 +2908,9 @@ DWORD PNP_DriverStoreAddDriverPackage( /* Function 71 */ -DWORD PNP_DriverStoreDeleteDriverPackage( +DWORD +WINAPI +PNP_DriverStoreDeleteDriverPackage( handle_t hBinding) { UNIMPLEMENTED; @@ -2777,7 +2919,9 @@ DWORD PNP_DriverStoreDeleteDriverPackage( /* Function 72 */ -DWORD PNP_RegisterServiceNotification( +DWORD +WINAPI +PNP_RegisterServiceNotification( handle_t hBinding) { UNIMPLEMENTED; @@ -2786,7 +2930,9 @@ DWORD PNP_RegisterServiceNotification( /* Function 73 */ -DWORD PNP_SetActiveService( +DWORD +WINAPI +PNP_SetActiveService( handle_t hBinding, LPWSTR pszFilter, DWORD ulFlags) @@ -2797,7 +2943,9 @@ DWORD PNP_SetActiveService( /* Function 74 */ -DWORD PNP_DeleteServiceDevices( +DWORD +WINAPI +PNP_DeleteServiceDevices( handle_t hBinding) { UNIMPLEMENTED; diff --git a/reactos/base/services/umpnpmgr/umpnpmgr.spec b/reactos/base/services/umpnpmgr/umpnpmgr.spec index ba4214eb74d..62dc73b1107 100644 --- a/reactos/base/services/umpnpmgr/umpnpmgr.spec +++ b/reactos/base/services/umpnpmgr/umpnpmgr.spec @@ -1,13 +1,10 @@ @ stub DeleteServicePlugPlayRegKeys -;;; FIXME: Windows UMPNPMGR exports those APIs. -;;; Fix their calling convention before enabling these exports!! - -;@ stdcall PNP_GetDeviceList(long ptr ptr ptr long) -;@ stdcall PNP_GetDeviceListSize(long ptr ptr long) -;@ stdcall PNP_GetDeviceRegProp(long ptr long ptr ptr ptr ptr long) -;@ stdcall PNP_HwProfFlags(long long ptr long ptr ptr ptr long long) -;@ stdcall PNP_SetActiveService(long ptr long) +@ stdcall PNP_GetDeviceList(long ptr ptr ptr long) +@ stdcall PNP_GetDeviceListSize(long ptr ptr long) +@ stdcall PNP_GetDeviceRegProp(long ptr long ptr ptr ptr ptr long) +@ stdcall PNP_HwProfFlags(long long ptr long ptr ptr ptr long long) +@ stdcall PNP_SetActiveService(long ptr long) @ stub RegisterScmCallback @ stub RegisterServiceNotification diff --git a/reactos/include/reactos/idl/pnp.idl b/reactos/include/reactos/idl/pnp.idl index 49e4943883a..2acd2027910 100644 --- a/reactos/include/reactos/idl/pnp.idl +++ b/reactos/include/reactos/idl/pnp.idl @@ -261,42 +261,58 @@ typedef struct _DEVPROPKEY { interface pnp { /* Function 0 */ - DWORD PNP_Disconnect( + DWORD + __stdcall + PNP_Disconnect( [in] handle_t hBinding); /* FIXME */ /* Function 1 */ - DWORD PNP_Connect( + DWORD + __stdcall + PNP_Connect( [in] handle_t hBinding); /* FIXME */ /* Function 2 */ - DWORD PNP_GetVersion( + DWORD + __stdcall + PNP_GetVersion( [in] handle_t hBinding, [out] WORD *pVersion); /* Function 3 */ - DWORD PNP_GetGlobalState( + DWORD + __stdcall + PNP_GetGlobalState( [in] handle_t hBinding, [out] DWORD *pulState, [in] DWORD ulFlags); /* Function 4 */ - DWORD PNP_InitDetection( + DWORD + __stdcall + PNP_InitDetection( [in] handle_t hBinding); /* Function 5 */ - DWORD PNP_ReportLogOn( + DWORD + __stdcall + PNP_ReportLogOn( [in] handle_t hBinding, [in] BOOL Admin, [in] DWORD ProcessId); /* Function 6 */ - DWORD PNP_ValidateDeviceInstance( + DWORD + __stdcall + PNP_ValidateDeviceInstance( [in] handle_t hBinding, [in, string, ref] LPWSTR pDeviceID, [in] DWORD ulFlags); /* Function 7 */ - DWORD PNP_GetRootDeviceInstance( + DWORD + __stdcall + PNP_GetRootDeviceInstance( [in] handle_t hBinding, [out, string, size_is(ulLength)] LPWSTR pDeviceID, [in] PNP_RPC_STRING_LEN ulLength); @@ -305,7 +321,9 @@ interface pnp cpp_quote("#define PNP_GET_PARENT_DEVICE_INSTANCE 0x1") cpp_quote("#define PNP_GET_CHILD_DEVICE_INSTANCE 0x2") cpp_quote("#define PNP_GET_SIBLING_DEVICE_INSTANCE 0x3") - DWORD PNP_GetRelatedDeviceInstance( + DWORD + __stdcall + PNP_GetRelatedDeviceInstance( [in] handle_t hBinding, [in] DWORD ulRelationship, [in, string, ref] LPWSTR pDeviceID, @@ -316,7 +334,9 @@ interface pnp /* Function 9 */ cpp_quote("#define PNP_ENUMERATOR_SUBKEYS 0x1") cpp_quote("#define PNP_CLASS_SUBKEYS 0x2") - DWORD PNP_EnumerateSubKeys( + DWORD + __stdcall + PNP_EnumerateSubKeys( [in] handle_t hBinding, [in] DWORD ulBranch, [in] DWORD ulIndex, @@ -326,7 +346,9 @@ interface pnp [in] DWORD ulFlags); /* Function 10 */ - DWORD PNP_GetDeviceList( + DWORD + __stdcall + PNP_GetDeviceList( [in] handle_t hBinding, [in, string, unique] LPWSTR pszFilter, [out, size_is(*pulLength), length_is(*pulLength)] LPWSTR Buffer, @@ -334,21 +356,27 @@ interface pnp [in] DWORD ulFlags); /* Function 11 */ - DWORD PNP_GetDeviceListSize( + DWORD + __stdcall + PNP_GetDeviceListSize( [in] handle_t hBinding, [in, string, unique] LPWSTR pszFilter, [out] PNP_RPC_BUFFER_SIZE *pulLen, [in] DWORD ulFlags); /* Function 12 */ - DWORD PNP_GetDepth( + DWORD + __stdcall + PNP_GetDepth( [in] handle_t hBinding, [in, string, ref] LPWSTR pszDeviceID, [out] DWORD *pulDepth, [in] DWORD ulFlags); /* Function 13 */ - DWORD PNP_GetDeviceRegProp( + DWORD + __stdcall + PNP_GetDeviceRegProp( [in] handle_t hBinding, [in, string, ref] LPWSTR pDeviceID, [in] DWORD ulProperty, @@ -359,7 +387,9 @@ interface pnp [in] DWORD ulFlags); /* Function 14 */ - DWORD PNP_SetDeviceRegProp( + DWORD + __stdcall + PNP_SetDeviceRegProp( [in] handle_t hBinding, [in, string, ref] LPWSTR pDeviceId, [in] DWORD ulProperty, @@ -369,21 +399,27 @@ interface pnp [in] DWORD ulFlags); /* Function 15 */ - DWORD PNP_GetClassInstance( + DWORD + __stdcall + PNP_GetClassInstance( [in] handle_t hBinding, [in, string, ref] LPWSTR pDeviceId, [out, string, size_is(ulLength)] LPWSTR pszClassInstance, [in] PNP_RPC_STRING_LEN ulLength); /* Function 16 */ - DWORD PNP_CreateKey( + DWORD + __stdcall + PNP_CreateKey( [in] handle_t hBinding, [in, string, ref] LPWSTR pszSubKey, [in] DWORD samDesired, [in] DWORD ulFlags); /* Function 17 */ - DWORD PNP_DeleteRegistryKey( + DWORD + __stdcall + PNP_DeleteRegistryKey( [in] handle_t hBinding, [in, string, ref] LPWSTR pszDeviceID, [in, string, ref] LPWSTR pszParentKey, @@ -391,13 +427,17 @@ interface pnp [in] DWORD ulFlags); /* Function 18 */ - DWORD PNP_GetClassCount( + DWORD + __stdcall + PNP_GetClassCount( [in] handle_t hBinding, [out] DWORD *pulClassCount, [in] DWORD ulFlags); /* Function 19 */ - DWORD PNP_GetClassName( + DWORD + __stdcall + PNP_GetClassName( [in] handle_t hBinding, [in, string, ref] LPWSTR pszClassGuid, [out, string, size_is(*pulLength)] LPWSTR Buffer, @@ -405,13 +445,17 @@ interface pnp [in] DWORD ulFlags); /* Function 20 */ - DWORD PNP_DeleteClassKey( + DWORD + __stdcall + PNP_DeleteClassKey( [in] handle_t hBinding, [in, string, ref] LPWSTR pszClassGuid, [in] DWORD ulFlags); /* Function 21 */ - DWORD PNP_GetInterfaceDeviceAlias( + DWORD + __stdcall + PNP_GetInterfaceDeviceAlias( [in] handle_t hBinding, [in, string, ref] LPWSTR pszInterfaceDevice, [in] GUID *AliasInterfaceGuid, @@ -421,7 +465,9 @@ interface pnp [in] DWORD ulFlags); /* Function 22 */ - DWORD PNP_GetInterfaceDeviceList( + DWORD + __stdcall + PNP_GetInterfaceDeviceList( [in] handle_t hBinding, [in] GUID *InterfaceGuid, [in, string, unique] LPWSTR pszDeviceID, @@ -430,7 +476,9 @@ interface pnp [in] DWORD ulFlags); /* Function 23 */ - DWORD PNP_GetInterfaceDeviceListSize( + DWORD + __stdcall + PNP_GetInterfaceDeviceListSize( [in] handle_t hBinding, [out] PNP_RPC_BUFFER_SIZE *pulLen, [in] GUID *InterfaceGuid, @@ -438,7 +486,9 @@ interface pnp [in] DWORD ulFlags); /* Function 24 */ - DWORD PNP_RegisterDeviceClassAssociation( + DWORD + __stdcall + PNP_RegisterDeviceClassAssociation( [in] handle_t hBinding, [in, string, unique] LPWSTR pszDeviceID, [in] GUID *InterfaceGuid, @@ -449,13 +499,17 @@ interface pnp [in] DWORD ulFlags); /* Function 25 */ - DWORD PNP_UnregisterDeviceClassAssociation( + DWORD + __stdcall + PNP_UnregisterDeviceClassAssociation( [in] handle_t hBinding, [in, string, unique] LPWSTR pszInterfaceDevice, [in] DWORD ulFlags); /* Function 26 */ - DWORD PNP_GetClassRegProp( + DWORD + __stdcall + PNP_GetClassRegProp( [in] handle_t hBinding, [in, string, ref] LPWSTR pszClassGuid, [in] DWORD ulProperty, @@ -466,7 +520,9 @@ interface pnp [in] DWORD ulFlags); /* Function 27 */ - DWORD PNP_SetClassRegProp( + DWORD + __stdcall + PNP_SetClassRegProp( [in] handle_t hBinding, [in, string, ref] LPWSTR pszClassGuid, [in] DWORD ulProperty, @@ -476,7 +532,9 @@ interface pnp [in] DWORD ulFlags); /* Function 28 */ - DWORD PNP_CreateDevInst( + DWORD + __stdcall + PNP_CreateDevInst( [in] handle_t hBinding, [in, out, string, size_is(ulLength)] LPWSTR pszDeviceID, [in, string, ref] LPWSTR pszParentDeviceID, @@ -489,7 +547,9 @@ interface pnp cpp_quote("#define PNP_DEVINST_ENABLE 0x4") cpp_quote("#define PNP_DEVINST_DISABLE 0x5") cpp_quote("#define PNP_DEVINST_REENUMERATE 0x7") - DWORD PNP_DeviceInstanceAction( + DWORD + __stdcall + PNP_DeviceInstanceAction( [in] handle_t hBinding, [in] DWORD ulAction, [in] DWORD ulFlags, @@ -497,7 +557,9 @@ interface pnp [in, string, unique] LPWSTR pszDeviceInstance2); /* Function 30 */ - DWORD PNP_GetDeviceStatus( + DWORD + __stdcall + PNP_GetDeviceStatus( [in] handle_t hBinding, [in, string, unique] LPWSTR pDeviceID, [out] DWORD *pulStatus, @@ -505,14 +567,18 @@ interface pnp [in] DWORD ulFlags); /* Function 31 */ - DWORD PNP_SetDeviceProblem( + DWORD + __stdcall + PNP_SetDeviceProblem( [in] handle_t hBinding, [in, string, unique] LPWSTR pDeviceID, [in] DWORD ulProblem, [in] DWORD ulFlags); /* Function 32 */ - DWORD PNP_DisableDevInst( + DWORD + __stdcall + PNP_DisableDevInst( [in] handle_t hBinding, [in, string, unique] LPWSTR pDeviceID, [in, out, unique] PPNP_VETO_TYPE pVetoType, @@ -521,26 +587,34 @@ interface pnp [in] DWORD ulFlags); /* Function 33 */ - DWORD PNP_UninstallDevInst( + DWORD + __stdcall + PNP_UninstallDevInst( [in] handle_t hBinding, [in, string, unique] LPWSTR pDeviceID, [in] DWORD ulFlags); /* Function 34 */ - DWORD PNP_AddID( + DWORD + __stdcall + PNP_AddID( [in] handle_t hBinding, [in, string, unique] LPWSTR pszDeviceID, [in, string, ref] LPWSTR pszID, [in] DWORD ulFlags); /* Function 35 */ - DWORD PNP_RegisterDriver( + DWORD + __stdcall + PNP_RegisterDriver( [in] handle_t hBinding, [in, string, ref] LPWSTR pszDeviceID, [in] DWORD ulFlags); /* Function 36 */ - DWORD PNP_QueryRemove( + DWORD + __stdcall + PNP_QueryRemove( [in] handle_t hBinding, [in, string, ref] LPWSTR pszDeviceID, [in, out, unique] PPNP_VETO_TYPE pVetoType, @@ -549,7 +623,9 @@ interface pnp [in] DWORD ulFlags); /* Function 37 */ - DWORD PNP_RequestDeviceEject( + DWORD + __stdcall + PNP_RequestDeviceEject( [in] handle_t hBinding, [in, string, ref] LPWSTR pszDeviceID, [in, out, unique] PPNP_VETO_TYPE pVetoType, @@ -558,18 +634,24 @@ interface pnp [in] DWORD ulFlags); /* Function 38 */ - DWORD PNP_IsDockStationPresent( + DWORD + __stdcall + PNP_IsDockStationPresent( [in] handle_t hBinding, [in, out, unique] BOOL *Present); /* Function 39 */ - DWORD PNP_RequestEjectPC( + DWORD + __stdcall + PNP_RequestEjectPC( [in] handle_t hBinding); /* Function 40 */ cpp_quote("#define PNP_GET_HWPROFFLAGS 0x1") cpp_quote("#define PNP_SET_HWPROFFLAGS 0x2") - DWORD PNP_HwProfFlags( + DWORD + __stdcall + PNP_HwProfFlags( [in] handle_t hBinding, [in] DWORD ulAction, [in, string, ref] LPWSTR pDeviceID, @@ -581,7 +663,9 @@ interface pnp [in] DWORD ulFlags); /* Function 41 */ - DWORD PNP_GetHwProfInfo( + DWORD + __stdcall + PNP_GetHwProfInfo( [in] handle_t hBinding, [in] DWORD ulIndex, [in, out, ref] HWPROFILEINFO *pHWProfileInfo, @@ -590,7 +674,9 @@ interface pnp [in] DWORD ulFlags); /* Function 42 */ - DWORD PNP_AddEmptyLogConf( + DWORD + __stdcall + PNP_AddEmptyLogConf( [in] handle_t hBinding, [in, string, ref] LPWSTR pDeviceID, [in] DWORD ulPriority, @@ -598,7 +684,9 @@ interface pnp [in] DWORD ulFlags); /* Function 43 */ - DWORD PNP_FreeLogConf( + DWORD + __stdcall + PNP_FreeLogConf( [in] handle_t hBinding, [in, string, ref] LPWSTR pDeviceID, [in] DWORD ulLogConfType, @@ -606,7 +694,9 @@ interface pnp [in] DWORD ulFlags); /* Function 44 */ - DWORD PNP_GetFirstLogConf( + DWORD + __stdcall + PNP_GetFirstLogConf( [in] handle_t hBinding, [in, string, ref] LPWSTR pDeviceID, [in] DWORD ulLogConfType, @@ -614,7 +704,9 @@ interface pnp [in] DWORD ulFlags); /* Function 45 */ - DWORD PNP_GetNextLogConf( + DWORD + __stdcall + PNP_GetNextLogConf( [in] handle_t hBinding, [in, string, ref] LPWSTR pDeviceID, [in] DWORD ulLogConfType, @@ -623,7 +715,9 @@ interface pnp [in] DWORD ulFlags); /* Function 46 */ - DWORD PNP_GetLogConfPriority( + DWORD + __stdcall + PNP_GetLogConfPriority( [in] handle_t hBinding, [in, string, ref] LPWSTR pDeviceID, [in] DWORD ulType, @@ -632,7 +726,9 @@ interface pnp [in] DWORD ulFlags); /* Function 47 */ - DWORD PNP_AddResDes( + DWORD + __stdcall + PNP_AddResDes( [in] handle_t hBinding, [in, string, ref] LPWSTR pDeviceID, [in] DWORD ulLogConfTag, @@ -644,7 +740,9 @@ interface pnp [in] DWORD ulFlags); /* Function 48 */ - DWORD PNP_FreeResDes( + DWORD + __stdcall + PNP_FreeResDes( [in] handle_t hBinding, [in, string, ref] LPWSTR pDeviceID, [in] DWORD ulLogConfTag, @@ -656,7 +754,9 @@ interface pnp [in] DWORD ulFlags); /* Function 49 */ - DWORD PNP_GetNextResDes( + DWORD + __stdcall + PNP_GetNextResDes( [in] handle_t hBinding, [in, string, ref] LPWSTR pDeviceID, [in] DWORD ulLogConfTag, @@ -668,7 +768,9 @@ interface pnp [in] DWORD ulFlags); /* Function 50 */ - DWORD PNP_GetResDesData( + DWORD + __stdcall + PNP_GetResDesData( [in] handle_t hBinding, [in, string, ref] LPWSTR pDeviceID, [in] DWORD ulLogConfTag, @@ -680,7 +782,9 @@ interface pnp [in] DWORD ulFlags); /* Function 51 */ - DWORD PNP_GetResDesDataSize( + DWORD + __stdcall + PNP_GetResDesDataSize( [in] handle_t hBinding, [in, string, ref] LPWSTR pDeviceID, [in] DWORD ulLogConfTag, @@ -691,7 +795,9 @@ interface pnp [in] DWORD ulFlags); /* Function 52 */ - DWORD PNP_ModifyResDes( + DWORD + __stdcall + PNP_ModifyResDes( [in] handle_t hBinding, [in, string, ref] LPWSTR pDeviceID, [in] DWORD ulLogConfTag, @@ -704,7 +810,9 @@ interface pnp [in] DWORD ulFlags); /* Function 53 */ - DWORD PNP_DetectResourceConflict( + DWORD + __stdcall + PNP_DetectResourceConflict( [in] handle_t hBinding, [in, string, ref] LPWSTR pDeviceID, [in] RESOURCEID ResourceID, @@ -714,7 +822,9 @@ interface pnp [in] DWORD ulFlags); /* Function 54 */ - DWORD PNP_QueryResConfList( + DWORD + __stdcall + PNP_QueryResConfList( [in] handle_t hBinding, [in, string, ref] LPWSTR pDeviceID, [in] RESOURCEID ResourceID, @@ -725,13 +835,17 @@ interface pnp [in] DWORD ulFlags); /* Function 55 */ - DWORD PNP_SetHwProf( + DWORD + __stdcall + PNP_SetHwProf( [in] handle_t hBinding, [in] DWORD ulHardwareProfile, [in] DWORD ulFlags); /* Function 56 */ - DWORD PNP_QueryArbitratorFreeData( + DWORD + __stdcall + PNP_QueryArbitratorFreeData( [in] handle_t hBinding, [out,size_is(DataLen)] BYTE *pData, [in] DWORD DataLen, @@ -740,7 +854,9 @@ interface pnp [in] DWORD ulFlags); /* Function 57 */ - DWORD PNP_QueryArbitratorFreeSize( + DWORD + __stdcall + PNP_QueryArbitratorFreeSize( [in] handle_t hBinding, [out] DWORD *pulSize, [in, string, ref] LPWSTR pDeviceID, @@ -748,22 +864,30 @@ interface pnp [in] DWORD ulFlags); /* Function 58 */ - DWORD PNP_RunDetection( + DWORD + __stdcall + PNP_RunDetection( [in] handle_t hBinding, [in] DWORD ulFlags); /* Function 59 */ - DWORD PNP_RegisterNotification( + DWORD + __stdcall + PNP_RegisterNotification( [in] handle_t hBinding); /* Function 60 */ - DWORD PNP_UnregisterNotification( + DWORD + __stdcall + PNP_UnregisterNotification( [in] handle_t hBinding); cpp_quote("#if _WIN32_WINNT >= 0x0501") /* Function 61 */ - DWORD PNP_GetCustomDevProp( + DWORD + __stdcall + PNP_GetCustomDevProp( [in] handle_t hBinding, [in, string, ref] LPWSTR pDeviceID, [in, string, ref] LPWSTR CustomPropName, @@ -774,12 +898,16 @@ cpp_quote("#if _WIN32_WINNT >= 0x0501") [in] DWORD ulFlags); /* Function 62 */ - DWORD PNP_GetVersionInternal( + DWORD + __stdcall + PNP_GetVersionInternal( [in] handle_t hBinding, [in, out] WORD *pwVersion); /* Function 63 */ - DWORD PNP_GetBlockedDriverInfo( + DWORD + __stdcall + PNP_GetBlockedDriverInfo( [in] handle_t hBinding, [out, size_is(*pulLength), length_is(*pulTransferLen)] BYTE *Buffer, [out] PNP_RPC_BUFFER_SIZE *pulTransferLen, @@ -787,7 +915,9 @@ cpp_quote("#if _WIN32_WINNT >= 0x0501") [in] DWORD ulFlags); /* Function 64 */ - DWORD PNP_GetServerSideDeviceInstallFlags( + DWORD + __stdcall + PNP_GetServerSideDeviceInstallFlags( [in] handle_t hBinding, [out] DWORD *pulSSDIFlags, [in] DWORD ulFlags);