Hi!

Can somebody help me with creating $isadmin? I don't know so well $com objects and if somebody is glad to help me, i'll be very thankful.

The idea is simple: i need to know if mirc.exe is running as administrator or not! Please don't confuse with the item if a windows account is an administrator or standard account. I need to know if mirc.exe when opens is running as administrator (right-click mirc.exe -> run as administrator or is set in Proprieties\Compatibility -> Run as administrator) or not. $isadmin must return $true or $false.

Thank you and hope for your help.

P.S. Someone provide me an example, but it not works:

Code:
; $isadmin
; Returns $true or null

alias isadmin {
  if (!$isid) return
  set -l %a isadmin_ $+ $ticks $+ $rand(1111,9999))
  if ($com(locator_ $+ %a)) .comclose locator_ $+ %a
  .comopen locator_ $+ %a WbemScripting.SWbemLocator
  if ($comerr) return
  if ($com(services_ $+ %a)) .comclose services_ $+ %a
  if (!$com(locator_ $+ %a,ConnectServer,3,dispatch* services_ $+ %a)) || ($comerr) return
  .comclose locator_ $+ %a
  if ($com(os_ $+ %a)) .comclose os_ $+ services_ $+ %a
  if (!$com(services_ $+ %a,ExecQuery,3,bstr,Select * from Win32_OperatingSystem,dispatch* os_ $+ %a)) || ($comerr) return
  .comclose services_ $+ %a
  if ($com(os_ $+ %a,Count,3)) && ($comval(os_ $+ %a,1,SystemDirectory)) set -l %sysdir $v1 $+ \
  else return
  .comclose os_ $+ %a
  .fopen -o %a $qt(%sysdir $+ %a $+ .tmp)
  .fwrite %a $!true
  .fclose %a
  set -l %read $read(%sysdir $+ %a $+ .tmp)
  .remove $qt(%sysdir $+ %a $+ .tmp)
  return %read
}

Last edited by klez; 18/02/17 12:56 PM.