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

时间:2021-05-22

当你通过类似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

执行后的结果类似:



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

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章