在具有正确设置的Win/IE环境中,您可以启动一个.exe文件。
下面的代码运行良好,可以激发Microsoft (的新名称)。
...
<a href="#" onclick="fnShellExecute();">start chat</a>
</body>
</html>
<script type="text/javascript">
function fnShellExecute()
{
var objShell = new ActiveXObject("shell.Application");
objShell.ShellExecute("communicator.exe", "", "C:\Program Files (x86)\Microsoft Lync", "open", 10);
}
</script>但是我无法计算出参数(如果可能的话)来创建一个快捷方式,用聊天框打开Lync客户端到另一个可用的开放用户。基本上,我知道谁是可用的,我希望能够创建一个简单的链接(在HTML中),这个链接将打开一个聊天窗口给那个人(除了WPF、Silverlight或任何内置的控件)。
有人知道如何调整javascript中的这一行以打开Lync聊天窗口到指定的联系人吗?
objShell.ShellExecute("communicator.exe", "", "C:\Program Files (x86)\Microsoft Lync", "open", 10);如果有另一种方式可以通过某种快捷方式在聊天模式下打开Lync呢?
提前谢谢你。
发布于 2010-10-25 11:46:58
根据您的需求,最简单的方法是使用现有的NameCtrl个性化菜单--这是在SharePoint (以及其他基于web的应用程序,如Dynamics )上悬停在用户存在图标上时显示的弹出菜单。这个菜单允许你打电话给用户,开始一个新的对话等等。你需要在你正在运行的机器上安装Office,这样它才能工作。
例如,在运行Office 2007/2010和IE的任何客户端机器上都可以使用此方法。在“您的联系人”文本上悬停以查看人物角色菜单:
<script>
var sipUri = "your.contact@your.domain.com";
var nameCtrl = new ActiveXObject('Name.NameCtrl.1');
if (nameCtrl.PresenceEnabled)
{
nameCtrl.OnStatusChange = onStatusChange;
nameCtrl.GetStatus(sipUri, "1");
}
function onStatusChange(name, status, id)
{
// This function is fired when the contacts presence status changes.
// In a real world solution, you would want to update an image to reflect the users presence
alert(name + ", " + status + ", " + id);
}
function ShowOOUI()
{
nameCtrl.ShowOOUI(sipUri, 0, 15, 15);
}
function HideOOUI()
{
nameCtrl.HideOOUI();
}
</script>
<span onmouseover="ShowOOUI()" onmouseout="HideOOUI()" style="border-style:solid">Your Contact</span>发布于 2010-10-25 11:50:12
如果NameCtrl的答案不符合您的要求,您可以尝试使用Lync SDK。创建一个使用Automation打开与给定用户对话的.NET DLL非常简单。
然后,您需要通过COM公开它,以确保可以从JavaScript调用它。同样,使用.NET的COM Interop特性非常简单。
https://stackoverflow.com/questions/3935606
复制相似问题