README.md
Rendering markdown...
import "oaidl.idl";
import "ocidl.idl";
// DllOffset: 0x1CFE0
// DllPath C:\windows\system32\umpo.dll
// ServiceName: Power
// ServiceDisplayName: Power
[
uuid(6c9b7b96-45a8-4cca-9eb3-e21ccf8b5a89),
version(1.1),
]
interface intf_6c9b7b96_45a8_4cca_9eb3_e21ccf8b5a89 {
typedef struct Struct_6_t {
short filler;
}Struct_6_t;
typedef struct Struct_244_t {
short filler;
}Struct_244_t;
long UmpoRpcGetPowerConfiguration(
[out]struct Struct_6_t* arg_1);
long UmpoRpcReadFromSystemPowerKey(
[in][unique]struct GUID* arg_1,
[in][unique]struct GUID* arg_2,
[in][unique]struct GUID* arg_3,
[in]long arg_4,
[in][out][unique]long *arg_5,
[in]long arg_6,
[in][out][unique][size_is(arg_8)]/*[range(0,0)]*/ char *arg_7,
[in]long arg_8,
[out]long *arg_9);
long UmpoRpcReadFromUserPowerKey(
[in][unique]struct GUID* arg_1,
[in][unique]struct GUID* arg_2,
[in][unique]struct GUID* arg_3,
[in]long arg_4,
[in]long arg_5,
[in][out][unique][size_is(arg_7)]/*[range(0,0)]*/ char *arg_6,
[in]long arg_7,
[out]long *arg_8);
long UmpoRpcReadACValue(
[in][unique]struct GUID* arg_1,
[in][unique]struct GUID* arg_2,
[in][unique]struct GUID* arg_3,
[in][out][unique]long *arg_4,
[in][out][unique][size_is(arg_6)]/*[range(0,0)]*/ char *arg_5,
[in]long arg_6,
[out]long *arg_7);
long UmpoRpcReadDCValue(
[in][unique]struct GUID* arg_1,
[in][unique]struct GUID* arg_2,
[in][unique]struct GUID* arg_3,
[in][out][unique]long *arg_4,
[in][out][unique][size_is(arg_6)]/*[range(0,0)]*/ char *arg_5,
[in]long arg_6,
[out]long *arg_7);
long UmpoRpcWriteToSystemPowerKey(
[in][unique]struct GUID* arg_1,
[in][unique]struct GUID* arg_2,
[in][unique]struct GUID* arg_3,
[in]long arg_4,
[in]long arg_5,
[in]long arg_6,
[in][size_is(arg_8)]/*[range(0,0)]*/ char *arg_7,
[in]long arg_8);
long UmpoRpcWriteToUserPowerKey(
[in][unique]struct GUID* arg_1,
[in][unique]struct GUID* arg_2,
[in][unique]struct GUID* arg_3,
[in]long arg_4,
[in]long arg_5,
[in][size_is(arg_7)]/*[range(0,0)]*/ char *arg_6,
[in]long arg_7);
long UmpoRpcApplyPowerRequestOverride(
);
long UmpoRpcApplyPowerSetting(
[in][unique]struct GUID* arg_1,
[in][unique]struct GUID* arg_2);
long UmpoRpcSetActiveScheme(
[in][unique]struct GUID* arg_1,
[in]long arg_2);
long UmpoRpcGetActiveScheme(
[out]struct GUID* arg_1);
long UmpoRpcSetActiveOverlayScheme(
[in][unique]struct GUID* arg_1);
long UmpoRpcGetActualOverlayScheme(
[out]struct GUID* arg_1);
long UmpoRpcGetEffectiveOverlayScheme(
[out]struct GUID* arg_1);
long UmpoRpcGetOverlaySchemes(); // not accurate
long UmpoRpcRestoreDefaultScheme(
[in][unique]struct GUID* arg_1);
long UmpoRpcRestoreDefaultSchemesAll(
);
long UmpoRpcDuplicateScheme(
[in]struct GUID* arg_1,
[in]struct GUID* arg_2);
long UmpoRpcDeleteScheme(
[in]struct GUID* arg_1);
long UmpoRpcImportScheme(
[in][ref][range(0, 32767)][string] wchar_t* arg_1,
[in]struct GUID* arg_2);
long UmpoRpcReplaceDefaultPowerSchemes(
);
long UmpoRpcLegacyEventRegisterNotification(
handle_t p0,
[in]unsigned __int3264 arg_1,
[in][ref][range(0, 256)][string] wchar_t* arg_2,
[in]long arg_3);
long UmpoRpcEnumerate(
[in][unique]struct GUID* arg_1,
[in][unique]struct GUID* arg_2,
[in]long arg_3,
[in]long arg_4,
[in][out][unique][size_is(arg_6)]/*[range(0,0)]*/ char *arg_5,
[in]long arg_6,
[out]long *arg_7);
long UmpoRpcReadSecurityDescriptor(
[in]long arg_1,
[in][unique]struct GUID* arg_2,
[in][out][unique][size_is(arg_4)]/*[range(0,0)]*/ char *arg_3,
[in]long arg_4,
[out]long *arg_5);
long UmpoRpcWriteSecurityDescriptor(
[in]long arg_1,
[in][unique]struct GUID* arg_2,
[in][size_is(arg_4)]/*[range(0,0)]*/ char *arg_3,
[in]long arg_4);
long UmpoRpcSettingAccessCheck(
[in]long arg_1,
[in][unique]struct GUID* arg_2,
[in]long arg_3);
long UmpoRpcCreateSetting(
[in][unique]struct GUID* arg_1,
[in][unique]struct GUID* arg_2);
long UmpoRpcCreatePossibleSetting(
[in][unique]struct GUID* arg_1,
[in][unique]struct GUID* arg_2,
[in]long arg_3);
long UmpoRpcRemoveSetting(
[in][unique]struct GUID* arg_1,
[in][unique]struct GUID* arg_2);
long UmpoSetExpectedUserAwayIntervals(
[in]long arg_1,
[in] /* [DBG] FC_BOGUS_ARRAY */[size_is(arg_1)]/*[range(0,0)]*/ /* */ struct Struct_244_t* arg_2,
[in]long arg_3,
[in]long arg_4);
long UmpoClearExpectedUserAwayIntervals(
[in]long arg_1);
long UmpoGetMinUserAwayPredictionInterval(
[out]char *arg_1);
long UmpoRpcGetAdaptiveStandbyDiagnostics(
[in]long arg_1,
[in]long arg_2,
[in][out][unique][size_is(arg_4)]/*[range(0,0)]*/ char *arg_3,
[in]long arg_4,
[out]long *arg_5);
}