Advertisement
virus_forever

Untitled

Aug 7th, 2014
286
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Delphi 0.51 KB | None | 0 0
  1. function dsCoCreateInstanceAsAdmin(aHWnd: HWND; const aClassID: TGUID; const aIID: TGUID; out aObj; aOleCheck: Boolean = False): HRESULT;
  2. var
  3.  BO: BIND_OPTS3;
  4.  MonikerName: WideString;
  5. begin
  6.  MonikerName := 'Elevation:Administrator!new:' + GUIDToString(aClassID);
  7.  FillChar(BO, SizeOf(BIND_OPTS3), 0);
  8.  
  9.  BO.cbStruct := SizeOf(BIND_OPTS3);
  10.  BO.dwClassContext := CLSCTX_LOCAL_SERVER;
  11.  BO.hwnd := aHWnd;
  12.  
  13.  Result:=CoGetObject(PWideChar(MonikerName), @BO, aIID, @aObj);
  14.  
  15.  if aOleCheck then
  16.   OleCheck(Result);
  17. end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement