我有一个Outlook 2013和2016 VSTO外接项目,并试图将WPF用户控件添加到自定义任务窗格中,如此处所述。 我遇到的问题是,当我添加用户控件(WPF)时,它会生成一个带有网格的WPF控件,但会自动抛出“types”UserControl“不支持直接内容”的错误。 WPF生成: <UserControl x:Class="TestNamespace.UserControl1" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:local="clr-namespace:TestNamespace" mc:Ignorable="d" d:DesignHeight="300" d:DesignWidth="300"> <Grid> </Grid> </UserControl> 我知道在过去,我不得不将WPF项目typesguid添加到.proj文件,以获得一些工作,但添加这没有什么区别(事实上,它甚至不会按照特定顺序加载)。 原版的: <ProjectTypeGuids>{BAA0C2D2-18E2-41B9-852F-F413020CAA33};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids> 崩溃: <ProjectTypeGuids>{BAA0C2D2-18E2-41B9-852F-F413020CAA33};{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids> 不会崩溃,但不会修复错误: <ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{BAA0C2D2-18E2-41B9-852F-F413020CAA33};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids> 任何人都可以指向正确的方向吗? UPDATE 我试图直接创build一个新的类库项目,添加一个WPF用户控件,然后添加到System.Xaml的引用,我有同样的问题。
我的VSTO Outlook加载项突然停止在一个客户机器上工作(它不加载,没有错误信息),我坚持排除故障。 该机器是Windows 7 x86,Outlook 2007.该加载项是使用Visual Studio 2008编写的,并将VSTO 2005与2003 PIA一起使用(因为我们还需要支持Outlook 2003)。 它在其他机器上工作得很好。 以下是我试图获得有用的故障排除输出: 添加VSTO_SUPPRESSDISPLAYALERTS环境variables(设置为0 ) 。 用pipe理权限启动Outlook。 看看事件日志。 没有。 加载项只是不会加载没有给出任何迹象的原因。 我也检查了“通常的嫌疑犯”(CAS政策,PIA安装,LoadBehavior在registry中,重新安装VSTO和加载项)。 其他一些观察: registry中的LoadBehavior保持在3 。 该加载项在Outlook中显示为“禁用”。 在“COM加载项”中检查其checkbox只是不做任何事情(没有错误,当再次input表单时,checkbox被再次清除)。 它在其他客户机器上工作得很好,而且在这台机器上工作得很好。 (不,客户不能告诉我他的机器上发生了什么变化) 我有一个Trace.WriteLine消息在我的代码的最上方( ThisAddIn_Startup处理程序的第一行),没有达到(我用DebugView检查)。 因此,不加载的原因在我的加载项中不是例外,而是VSTO加载加载项或加载VSTO的失败。 而不是更多的随机debugging(“试试这个…”,“试试…”),我真的想强迫Outlook和/或VSTO告诉我什么是错的 ,即给我一个有用的错误信息,而不是试图启用加载项时什么也不做 。 有任何想法吗?