首页 > 开发 > PowerShell > 正文

Powershell从注册表中查询默认MAPI客户端的例子

2020-05-30 20:10:19
字体:
来源:转载
供稿:网友

当你通过类似Mailto:链接发送邮件,此时邮件客户端就是MAPI客户端。如果要找出到这个MAPI客户端在哪里,这里有个函数能从注册表中获得该信息。

代码如下:
functionGet-MAPIClient
{
    functionRemove-Argument
    {
      param
      (
        $CommandLine
      )

      $divider=''if ($CommandLine.StartsWith('"'))
      {
        $divider='"'$CommandLine=$CommandLine.SubString(1)
      }

      $CommandLine.Split($divider)[0]
    }

  $path='Registry::HKEY_CLASSES_ROOT/mailto/shell/open/command'# create new object to return values
$returnValue=1|Select-Object-PropertyHasMapiClient,Path,MailTo$returnValue.hasMAPIClient=Test-Path-Path$pathif ($returnValue.hasMAPIClient)
  {
    $values=Get-ItemProperty-Path$path$returnValue.MailTo=$values.'(default)'$returnValue.Path=Remove-Argument$returnValue.MailToif ((Test-Path-Path$returnValue.Path) -eq$false)
    {
      $returnValue.hasMAPIClient=$true
    }
  }

   
  $returnValue
}

Get-MAPIClient

执行后的结果类似:



举一反三,同样也可以修改代码查询其它类型的默认客户端。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表